Documentation structure
The Grafana Labs documentation team makes decisions about how to organize and structure product documentation. The topic levels discussed on this page reflect common user goals. For example, a first-time Grafana user must understand the basic concepts before installing the product.
Before you begin contributing to documentation, it’s important to understand the structure of the content.
User goals and documentation structure
When writing documentation, focus on what your user’s goals are.
Use the structure of your documentation to reflect the user’s goals. Think about what your users want to do, what they need to know, and how they can accomplish the tasks.
This approach applies not only to content on a page but also to how you organize a set of documentation, whether it’s for a product or a feature.
With well-structured content, you can find what you need quickly and easily. Topics flow in a logical progression.
Structure of published content
Generally, documentation structure determines how content is:
- Titled
- Grouped
- Combined (or not combined) with other, related content
A standardized content structure that spans sets of documentation provides a consistent user experience. Information flows from a higher (less specific) level to a lower (more specific) level. For example, a new Grafana user wants to learn conceptual information first, so Introduction comes before Installation.
Use the topics you need
Depending on your product design and maturity, you may not need every topic:
- If a topic doesn’t apply to your project, you don’t need to use it.
- For Grafana OSS for example, you might use all of the headings.
- For Grafana Enterprise Traces for example, you might only use a subset of topics.
Some topics are optional and are usually found in specific contexts. For example, the Create and Monitor topics are used in Grafana OnCall, but aren’t used in Grafana Tempo.
Give prominence to important topics
When you don’t have a long top-level table of contents, you can include them at the top level as individual topics or modifications to the standard topic list.
For example, Metrics-generator and TraceQL are two of the most viewed topics in Tempo documentation. Metrics-generator is a top-level topic and TraceQL is in the topic Query with TraceQL, a modification of the standard Query data topic.
Avoid extra hierarchy
When you only have a single topic, don’t nest it inside a standard topic just to use the standard topic list.
For example, in the Tempo documentation, API documentation would be the only entry under References standard topic. Instead of adding another layer in the table of contents, API documentation is at the top level.
Topic list
You can use the following high-level topics to group content. When writing new content, consider where it should appear given this content structure. For example, a conceptual page explaining metrics would go under the Introduction topic.
Topic | Example link | Contents |
---|---|---|
Introduction | Introduction to Grafana | Conceptual, fundamental, or architectural information. |
Get started | Get started with Grafana Tempo | Opinionated walk-throughs and tutorials. |
Set up | Set up Grafana | System requirements, and subsections titled Set up, Configure, Upgrade, or Migrate. |
Configure | Configure Tempo | Configure can be its own section directory if the number of pages warrants it. Making this determination isn't an exact science; use your best judgement. |
Create alerts | Create a Grafana managed alert rule | Specific to Grafana Ops products such as Alerting, OnCall, Incident, and SLO. The word alert may be changed, depending upon the product. If used with Grafana SLO, this then topic would be Create SLO. Don't use with backend database products, such as Tempo and Loki. Use Alerts instead, and refer to an operational product for details. |
Manage alerts | Manage SLOs | Specific to Grafana Ops products such as Alerting, OnCall, Incident, and SLO. The word alert may be changed, depending upon the product. If used with Grafana SLO, this then topic would be Create SLO. Don't use with backend database products, such as Tempo and Loki. Use Alert instead, and refer to an operational product for details. |
Integrate [with] <PRODUCT> or Send data | Instrument and send data to Grafana Cloud | How to set up data integrations, product integrations, data sources, clients, plugins, and more. |
Query data | Query with TraceQL | Query languages, query tools, and examples. |
Visualize data | Dashboards | Dashboard concepts and procedures. Link to the definitive source of dashboard documentation, rather than duplicating the information here. |
Alert | Alerting and recording rules | This topic level is used for pages that discuss alerting features, like alerting rules in Grafana Loki. It provides a place for alerting content that's not specific to the Grafana Operations products. |
Manage <PRODUCT> | Manage users and teams for Grafana OnCall | Information about managing a Grafana Labs product. For example, content in this topic helps you view, edit, and iterate on the Grafana product you installed. |
Monitor <PRODUCT> | Monitor Grafana Mimir | Information about using tools to monitor a Grafana Labs product. |
References | Grafana Mimir references | APIs, configuration references, SDKs, and more. Material that's usually not procedural. |