Compare commits

...

7 Commits

Author SHA1 Message Date
jtvdez
e003210566 adjusitng some plaement and adding hr elements 2025-12-02 12:08:38 -06:00
jtvdez
e055bf28e1 adding more missing sections 2025-12-02 12:07:11 -06:00
jtvdez
d20a4ae4cc additional alerting configs 2025-12-02 10:23:50 -06:00
jtvdez
91f48d51e6 docs: syncing config docs with defaults.ini 2025-12-01 15:55:09 -06:00
Sergej-Vlasov
780a64e771 DashboardControls: Adjust dashboard controls UI shift (#114639)
Some checks failed
Frontend performance tests / performance-tests (push) Has been cancelled
Actionlint / Lint GitHub Actions files (push) Has been cancelled
Backend Code Checks / Detect whether code changed (push) Has been cancelled
Backend Code Checks / Validate Backend Configs (push) Has been cancelled
Backend Unit Tests / Detect whether code changed (push) Has been cancelled
Backend Unit Tests / Grafana (1/8) (push) Has been cancelled
Backend Unit Tests / Grafana (2/8) (push) Has been cancelled
Backend Unit Tests / Grafana (3/8) (push) Has been cancelled
Backend Unit Tests / Grafana (4/8) (push) Has been cancelled
Backend Unit Tests / Grafana (5/8) (push) Has been cancelled
Backend Unit Tests / Grafana (6/8) (push) Has been cancelled
Backend Unit Tests / Grafana (7/8) (push) Has been cancelled
Backend Unit Tests / Grafana (8/8) (push) Has been cancelled
Backend Unit Tests / Grafana Enterprise (1/8) (push) Has been cancelled
Backend Unit Tests / Grafana Enterprise (2/8) (push) Has been cancelled
Backend Unit Tests / Grafana Enterprise (3/8) (push) Has been cancelled
Backend Unit Tests / Grafana Enterprise (4/8) (push) Has been cancelled
Backend Unit Tests / Grafana Enterprise (5/8) (push) Has been cancelled
Backend Unit Tests / Grafana Enterprise (6/8) (push) Has been cancelled
Backend Unit Tests / Grafana Enterprise (7/8) (push) Has been cancelled
Backend Unit Tests / Grafana Enterprise (8/8) (push) Has been cancelled
Backend Unit Tests / All backend unit tests complete (push) Has been cancelled
CodeQL checks / Detect whether code changed (push) Has been cancelled
CodeQL checks / Analyze (actions) (push) Has been cancelled
CodeQL checks / Analyze (go) (push) Has been cancelled
CodeQL checks / Analyze (javascript) (push) Has been cancelled
Lint Frontend / Detect whether code changed (push) Has been cancelled
Lint Frontend / Lint (push) Has been cancelled
Lint Frontend / Typecheck (push) Has been cancelled
Lint Frontend / Verify API clients (push) Has been cancelled
Lint Frontend / Verify API clients (enterprise) (push) Has been cancelled
golangci-lint / Detect whether code changed (push) Has been cancelled
golangci-lint / go-fmt (push) Has been cancelled
golangci-lint / lint-go (push) Has been cancelled
Verify i18n / verify-i18n (push) Has been cancelled
Documentation / Build & Verify Docs (push) Has been cancelled
End-to-end tests / Detect whether code changed (push) Has been cancelled
End-to-end tests / Build & Package Grafana (push) Has been cancelled
End-to-end tests / Build E2E test runner (push) Has been cancelled
End-to-end tests / push-docker-image (push) Has been cancelled
End-to-end tests / dashboards-suite (old arch) (push) Has been cancelled
End-to-end tests / panels-suite (old arch) (push) Has been cancelled
End-to-end tests / smoke-tests-suite (old arch) (push) Has been cancelled
End-to-end tests / various-suite (old arch) (push) Has been cancelled
End-to-end tests / Verify Storybook (Playwright) (push) Has been cancelled
End-to-end tests / Playwright E2E tests (1/8) (push) Has been cancelled
End-to-end tests / Playwright E2E tests (2/8) (push) Has been cancelled
End-to-end tests / Playwright E2E tests (3/8) (push) Has been cancelled
End-to-end tests / Playwright E2E tests (4/8) (push) Has been cancelled
End-to-end tests / Playwright E2E tests (5/8) (push) Has been cancelled
End-to-end tests / Playwright E2E tests (6/8) (push) Has been cancelled
End-to-end tests / Playwright E2E tests (7/8) (push) Has been cancelled
End-to-end tests / Playwright E2E tests (8/8) (push) Has been cancelled
End-to-end tests / run-azure-monitor-e2e (push) Has been cancelled
End-to-end tests / All Playwright tests complete (push) Has been cancelled
End-to-end tests / A11y test (push) Has been cancelled
End-to-end tests / Publish metrics (push) Has been cancelled
End-to-end tests / All E2E tests complete (push) Has been cancelled
Frontend tests / Detect whether code changed (push) Has been cancelled
Frontend tests / Unit tests (1 / 16) (push) Has been cancelled
Frontend tests / Unit tests (10 / 16) (push) Has been cancelled
Frontend tests / Unit tests (11 / 16) (push) Has been cancelled
Frontend tests / Unit tests (12 / 16) (push) Has been cancelled
Frontend tests / Unit tests (13 / 16) (push) Has been cancelled
Frontend tests / Unit tests (14 / 16) (push) Has been cancelled
Frontend tests / Unit tests (15 / 16) (push) Has been cancelled
Frontend tests / Unit tests (16 / 16) (push) Has been cancelled
Frontend tests / Unit tests (2 / 16) (push) Has been cancelled
Frontend tests / Unit tests (3 / 16) (push) Has been cancelled
Frontend tests / Unit tests (4 / 16) (push) Has been cancelled
Frontend tests / Unit tests (5 / 16) (push) Has been cancelled
Frontend tests / Unit tests (6 / 16) (push) Has been cancelled
Frontend tests / Unit tests (7 / 16) (push) Has been cancelled
Frontend tests / Unit tests (8 / 16) (push) Has been cancelled
Frontend tests / Unit tests (9 / 16) (push) Has been cancelled
Frontend tests / Decoupled plugin tests (push) Has been cancelled
Frontend tests / Packages unit tests (push) Has been cancelled
Frontend tests / All frontend unit tests complete (push) Has been cancelled
Frontend tests / Devenv frontend-service build (push) Has been cancelled
Integration Tests / Detect whether code changed (push) Has been cancelled
Integration Tests / Sqlite (1/4) (push) Has been cancelled
Integration Tests / Sqlite (2/4) (push) Has been cancelled
Integration Tests / Sqlite (3/4) (push) Has been cancelled
Integration Tests / Sqlite (4/4) (push) Has been cancelled
Integration Tests / Sqlite Without CGo (1/4) (push) Has been cancelled
Integration Tests / Sqlite Without CGo (2/4) (push) Has been cancelled
Integration Tests / Sqlite Without CGo (3/4) (push) Has been cancelled
Integration Tests / Sqlite Without CGo (4/4) (push) Has been cancelled
Integration Tests / Sqlite Without CGo (profiled) (push) Has been cancelled
Integration Tests / MySQL (1/16) (push) Has been cancelled
Integration Tests / MySQL (10/16) (push) Has been cancelled
Integration Tests / MySQL (11/16) (push) Has been cancelled
Integration Tests / MySQL (12/16) (push) Has been cancelled
Integration Tests / MySQL (13/16) (push) Has been cancelled
Integration Tests / MySQL (14/16) (push) Has been cancelled
Integration Tests / MySQL (15/16) (push) Has been cancelled
Integration Tests / MySQL (16/16) (push) Has been cancelled
Integration Tests / MySQL (2/16) (push) Has been cancelled
Integration Tests / MySQL (3/16) (push) Has been cancelled
Integration Tests / MySQL (4/16) (push) Has been cancelled
Integration Tests / MySQL (5/16) (push) Has been cancelled
Integration Tests / MySQL (6/16) (push) Has been cancelled
Integration Tests / MySQL (7/16) (push) Has been cancelled
Integration Tests / MySQL (8/16) (push) Has been cancelled
Integration Tests / MySQL (9/16) (push) Has been cancelled
Integration Tests / Postgres (1/16) (push) Has been cancelled
Integration Tests / Postgres (10/16) (push) Has been cancelled
Integration Tests / Postgres (11/16) (push) Has been cancelled
Integration Tests / Postgres (12/16) (push) Has been cancelled
Integration Tests / Postgres (13/16) (push) Has been cancelled
Integration Tests / Postgres (14/16) (push) Has been cancelled
Integration Tests / Postgres (15/16) (push) Has been cancelled
Integration Tests / Postgres (16/16) (push) Has been cancelled
Integration Tests / Postgres (2/16) (push) Has been cancelled
Integration Tests / Postgres (3/16) (push) Has been cancelled
Integration Tests / Postgres (4/16) (push) Has been cancelled
Integration Tests / Postgres (5/16) (push) Has been cancelled
Integration Tests / Postgres (6/16) (push) Has been cancelled
Integration Tests / Postgres (7/16) (push) Has been cancelled
Integration Tests / Postgres (8/16) (push) Has been cancelled
Integration Tests / Postgres (9/16) (push) Has been cancelled
Integration Tests / All backend integration tests complete (push) Has been cancelled
publish-kinds-next / main (push) Has been cancelled
publish-technical-documentation-next / sync (push) Has been cancelled
Reject GitHub secrets / reject-gh-secrets (push) Has been cancelled
Build Release Packages / setup (push) Has been cancelled
Build Release Packages / Dispatch grafana-enterprise build (push) Has been cancelled
Build Release Packages / / darwin-amd64 (push) Has been cancelled
Build Release Packages / / darwin-arm64 (push) Has been cancelled
Build Release Packages / / linux-amd64 (push) Has been cancelled
Build Release Packages / / linux-armv6 (push) Has been cancelled
Build Release Packages / / linux-armv7 (push) Has been cancelled
Build Release Packages / / linux-arm64 (push) Has been cancelled
Build Release Packages / / linux-s390x (push) Has been cancelled
Build Release Packages / / windows-amd64 (push) Has been cancelled
Build Release Packages / / windows-arm64 (push) Has been cancelled
Build Release Packages / Upload artifacts (push) Has been cancelled
Build Release Packages / publish-dockerhub (push) Has been cancelled
Build Release Packages / Dispatch publish NPM canaries (push) Has been cancelled
Build Release Packages / notify-pr (push) Has been cancelled
Run dashboard schema v2 e2e / dashboard-schema-v2-e2e (push) Has been cancelled
Shellcheck / Shellcheck scripts (push) Has been cancelled
Run Storybook a11y tests / Detect whether code changed (push) Has been cancelled
Run Storybook a11y tests / Run Storybook a11y tests (light theme) (push) Has been cancelled
Run Storybook a11y tests / Run Storybook a11y tests (dark theme) (push) Has been cancelled
Swagger generated code / Detect whether code changed (push) Has been cancelled
Swagger generated code / Verify committed API specs match (push) Has been cancelled
Dispatch sync to mirror / dispatch-job (push) Has been cancelled
Trivy Scan / trivy-scan (push) Has been cancelled
Relyance Compliance Inspection / relyance-compliance-inspector (push) Has been cancelled
Crowdin Download Action / download-sources-from-crowdin (push) Has been cancelled
adjust controls layout
2025-12-01 16:08:26 +00:00
Dave Thompson
156a6f1375 fix(operator): unify service center capitalization (#113720)
Change "Service Center" to "Service center" in navigation menu to follow
sentence case capitalization style consistently across the application.

Fixes grafana/slo#3818

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-01 17:20:29 +02:00
Isabel Matwawana
5fd4fb5fb8 Docs: Add missing layout options and rework Grid view section (#113007)
Co-authored-by: Isabel Matwawana <76437239+imatwawana@users.noreply.github.com>
Co-authored-by: Joey <90795735+joey-grafana@users.noreply.github.com>
2025-12-01 09:19:00 -05:00
4 changed files with 361 additions and 30 deletions

View File

@@ -226,8 +226,8 @@ Dashboards are reloaded when the JSON files change.
#### `min_tls_version`
The TLS Handshake requires a minimum TLS version. The available options are TLS1.2 and TLS1.3.
If you do not specify a version, the system uses TLS1.2.
The TLS handshake requires a minimum TLS version. Available options are `TLS1.2` and `TLS1.3`.
If you don't specify a version, Grafana uses `TLS1.2`.
#### `http_addr`
@@ -286,9 +286,9 @@ Set to `true` for Grafana to log all HTTP requests (not just errors). These are
#### `static_root_path`
The path to the directory where the frontend files (HTML, JS, and CSS
files). Defaults to `public` which is why the Grafana binary needs to be
executed with working directory set to the installation path.
The path to the directory containing the frontend files (HTML, JS, and CSS).
Defaults to `public`, which is why you must run the Grafana binary with the
working directory set to the installation path.
#### `enable_gzip`
@@ -312,8 +312,8 @@ Optional. Password to decrypt encrypted certificates.
#### `certs_watch_interval`
Controls whether `cert_key` and `cert_file` are periodically watched for changes.
Disabled, by default. When enabled, `cert_key` and `cert_file`
are watched for changes. If there is change, the new certificates are loaded automatically.
Disabled by default. When enabled, `cert_key` and `cert_file` are watched for
changes. If there is a change, Grafana loads the new certificates automatically.
{{< admonition type="warning" >}}
After the new certificates are loaded, connections with old certificates don't work.
@@ -393,6 +393,10 @@ The database user's password (not applicable for `sqlite3`). If the password con
Use either URL or the previous fields to configure the database
Example: `type://user:password@host:port/name`
#### `high_availability`
Enable or disable high availability mode. When disabled, some functions run in-process instead of relying on the database. Default is `true`.
#### `max_idle_conn`
The maximum number of connections in the idle connection pool.
@@ -475,6 +479,10 @@ This setting applies to `sqlite` only and controls the number of times the syste
Set to `true` to add metrics and tracing for database queries. The default value is `false`.
#### `delete_auto_gen_ids`
Delete auto-generated primary keys during migrations. Useful if the database has auto-generated primary keys enabled. Default is `false`.
#### `skip_dashboard_uid_migration_on_startup`
Set to true to skip dashboard UID migrations on startup. Improves startup performance for instances with large numbers of annotations who do not plan to downgrade Grafana. The default value is `false`.
@@ -516,6 +524,14 @@ Example connection string: `addr=127.0.0.1:6379,pool_size=100,db=0,username=graf
Example connection string: `127.0.0.1:11211`
#### `prefix`
Prefix prepended to all keys in the remote cache.
#### `encryption`
Enable encryption of values stored in the remote cache.
<hr />
### `[dataproxy]`
@@ -530,6 +546,10 @@ How long the data proxy should wait before timing out. Default is 30 seconds.
This setting also applies to core backend HTTP data sources where query requests use an HTTP client with timeout set.
#### `dialTimeout`
How long the data proxy waits to establish a TCP connection before timing out. Default is `10` seconds.
#### `keep_alive_seconds`
Interval between keep-alive probes. Default is `30` seconds. For more details, refer to the [`Dialer.KeepAlive`](https://golang.org/pkg/net/#Dialer.KeepAlive) documentation.
@@ -818,6 +838,22 @@ Set to `true` to execute the CSRF check even if the login cookie is not in a req
Comma-separated list of plugins IDs to load inside the frontend sandbox.
### `[security.encryption]`
Configure encryption-related cache settings for data encryption keys used by Grafana.
#### `data_keys_cache_ttl`
Defines the time-to-live (TTL) for decrypted data encryption keys stored in memory. Default: `15m`.
#### `data_keys_cache_cleanup_interval`
Sets how often Grafana cleans up the encryption key cache, removing entries that reached the TTL. Default: `1m`.
{{< admonition type="note" >}}
Small TTL values can impact performance due to frequent decryption operations.
{{< /admonition >}}
### `[snapshots]`
#### `enabled`
@@ -1650,6 +1686,10 @@ Custom HTTP endpoint to send events captured by the Grafana Faro agent to. Defau
If `custom_endpoint` required authentication, you can set the API key here. Only relevant for Grafana JavaScript Agent provider.
#### `internal_logger_level`
Sets the internal logging level for the Grafana JavaScript agent. Allowed values are `0` (OFF), `1` (ERROR), `2` (WARN), `3` (INFO), and `4` (VERBOSE). Default is `0`.
#### `instrumentations_console_enabled`
Enables the [Console instrumentation](https://grafana.com/docs/grafana-cloud/monitor-applications/frontend-observability/instrument/console-instrumentation/) for Grafana Faro, defaults to `true`.
@@ -1970,7 +2010,29 @@ This setting has precedence over each individual rule frequency.
If a rule frequency is lower than this value, then this value is enforced.
{{< /admonition >}}
<hr>
#### `state_periodic_save_interval`
If the `alertingSaveStatePeriodic` feature flag is enabled, sets the interval used to persist alerting instances to the database. Specify a duration (for example, `5m`). Default is `5m`.
#### `state_periodic_save_batch_size`
If the `alertingSaveStatePeriodic` feature flag is enabled, sets the size of the batch that is saved to the database at once. Default is `1`.
#### `state_periodic_save_jitter_enabled`
Enables jitter for periodic state saving to distribute database load over time. When enabled, batches are spread across the save interval to prevent load spikes. Default is `false`.
#### `disable_jitter`
Disables smoothing of alert evaluations across their evaluation window. When set to `true`, rules evaluate in sync. Default is `false`.
#### `notification_log_retention`
Retention period for Alertmanager notification log entries. Specify a duration (for example, `5d`). Default is `5d`.
#### `resolved_alert_retention`
Duration for which a resolved alert state transition continues to be sent to the Alertmanager. Specify a duration (for example, `15m`). Default is `15m`.
#### `rule_version_record_limit`
@@ -1978,6 +2040,12 @@ Defines the limits for how many alert rule versions are stored in the database p
The default `0` value means there's no limit.
#### `deleted_rule_retention`
Retention period for deleted alerting rules before permanent removal. Specify a duration (for example, `30d`). Default is `30d`. Setting `0` deletes rules immediately.
<hr>
### `[unified_alerting.screenshots]`
For more information about screenshots, refer to [Images in notifications](../../alerting/configure-notifications/template-notifications/images-in-notifications/).
@@ -2017,6 +2085,86 @@ For example: `disabled_labels=grafana_folder`
<hr>
### `[unified_alerting.state_history]`
Configure state history for Unified Alerting. Previous alert rule states can be queried in panels and viewed in the UI.
#### `enabled`
Enable or disable the state history functionality. Default: `true`.
#### `backend`
Select the backend for state history. Options: `annotations`, `loki`, `prometheus`, `multiple`. Default: `annotations`.
The backends provide different storage and query characteristics:
- **annotations:** Stores alert state transitions as Grafana annotations in the local database.
- **loki:** Writes alert state history to an external Loki instance. Requires Loki connection configuration in this section.
- **prometheus:** Emits alert state as `GRAFANA_ALERTS` metrics to a Prometheus-compatible data source. Requires Prometheus target configuration in this section.
- **multiple:** Writes state history to more than one backend at the same time. Use `primary` to select which backend serves queries, and `secondaries` for additional write targets.
Backend-specific configuration requirements:
- When `backend = annotations`, no additional keys in this section are required.
- When a Loki backend is used in any capacity (for example, `backend = loki`, or `backend = multiple` with Loki as `primary` or present in `secondaries`) you must set either `loki_remote_url` or both `loki_remote_read_url` and `loki_remote_write_url`.
- When a Prometheus backend is used in any capacity (for example, `backend = prometheus`, or `backend = multiple` with Prometheus present in `secondaries`) you must set `prometheus_target_datasource_uid`.
- When `backend = multiple`, set `primary` and `secondaries`.
#### `primary`
For `multiple` backend only. Sets the primary backend used to serve queries. Options: `annotations`, `loki`.
#### `secondaries`
For `multiple` backend only. Comma-separated list of additional backends to write state history to.
#### `loki_remote_url`
For `loki` backend. URL of the external Loki instance.
#### `loki_remote_read_url`
For `loki` backend. Read URL when Loki read/write endpoints are separated.
#### `loki_remote_write_url`
For `loki` backend. Write URL when Loki read/write endpoints are separated.
#### `loki_tenant_id`
For `loki` backend. Optional tenant ID to attach to requests.
#### `loki_basic_auth_username`
For `loki` backend. Optional username for basic authentication.
#### `loki_basic_auth_password`
For `loki` backend. Optional password for basic authentication.
#### `loki_max_query_length`
For `loki` backend. Maximum query length duration. Default: `721h`.
#### `loki_max_query_size`
For `loki` backend. Maximum query size in bytes. Default: `65536`.
#### `prometheus_target_datasource_uid`
For `prometheus` backend. Target datasource UID for writing `GRAFANA_ALERTS` metrics.
#### `prometheus_metric_name`
For `prometheus` backend. Metric name for `GRAFANA_ALERTS`. Default: `GRAFANA_ALERTS`.
#### `prometheus_write_timeout`
For `prometheus` backend. Timeout for writing `GRAFANA_ALERTS` metrics. Default: `10s`.
<hr>
### `[unified_alerting.state_history.annotations]`
This section controls retention of annotations automatically created while evaluating alert rules when alerting state history backend is configured to be annotations (see setting [unified_alerting.state_history].backend)
@@ -2031,6 +2179,36 @@ Configures max number of alert annotations that Grafana stores. Default value is
<hr>
### `[unified_alerting.notification_history]`
Enable storage of Alertmanager notification logs in Loki.
#### `enabled`
Enable or disable the notification history functionality. Default: `false`.
#### `loki_remote_url`
URL of the Loki instance used to store logs.
#### `loki_tenant_id`
Optional tenant ID to attach to requests sent to Loki.
#### `loki_basic_auth_username`
Optional username for basic authentication to Loki.
#### `loki_basic_auth_password`
Optional password for basic authentication to Loki.
### `[unified_alerting.notification_history.external_labels]`
Optional extra labels to attach to outbound notification history records or log streams. Provide any number of label key-value pairs.
<hr>
### `[unified_alerting.prometheus_conversion]`
This section applies only to rules imported as Grafana-managed rules. For more information about the import process, refer to [Import data source-managed rules to Grafana-managed rules](/docs/grafana/<GRAFANA_VERSION>/alerting/alerting-rules/alerting-migration/).
@@ -2041,6 +2219,52 @@ Set the query offset to imported Grafana-managed rules when `query_offset` is no
<hr>
### `[recording_rules]`
Configure recording rules.
#### `enabled`
Enable recording rules. Default: `true`.
#### `timeout`
Request timeout for recording rule writes. Default: `10s`.
#### `default_datasource_uid`
Default data source UID to write to if not specified in the rule definition.
### `[recording_rules.custom_headers]`
Optional custom headers to include in recording rule write requests.
### `[remote.alertmanager]`
Configure a remote Alertmanager to replace the internal one.
#### `url`
Root URL of the remote Alertmanager. Grafana automatically appends `/alertmanager` for certain HTTP calls.
#### `tenant`
Tenant ID used in requests. Also used as basic auth username if a password is configured.
#### `password`
Optional password for basic authentication. If not present, the tenant ID will be set in the X-Scope-OrgID header.
#### `sync_interval`
Interval for syncing with the Alertmanager. Default: `5m`.
#### `timeout`
Timeout for the HTTP client. Default: `30s`.
<hr>
### `[annotations]`
#### `cleanupjob_batchsize`
@@ -2951,6 +3175,8 @@ Move an app plugin (referenced by its id), including all its pages, to a specifi
Move an individual app plugin page (referenced by its `path` field) to a specific navigation section.
Format: `<pageUrl> = <sectionId> <sortWeight>`
<hr>
### `[public_dashboards]`
This section configures the [shared dashboards](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/dashboards/share-dashboards-panels/shared-dashboards/) feature.
@@ -2958,3 +3184,81 @@ This section configures the [shared dashboards](https://grafana.com/docs/grafana
#### `enabled`
Set this to `false` to disable the shared dashboards feature. This prevents users from creating new shared dashboards and disables existing ones.
<hr>
### `[cloud_migration]`
Configure the Grafana Cloud Migration Assistant.
#### `enabled`
Enable or disable the Cloud Migration Assistant. Default is `true`.
#### `is_target`
Enable the target-side migration UI. Default is `false`.
#### `gcom_api_token`
Token used to send requests to Grafana com. Default is empty.
#### `start_snapshot_timeout`
Timeout for requests to start a snapshot. Default is `5s`.
#### `validate_key_timeout`
Timeout for requests to validate a key. Default is `5s`.
#### `get_snapshot_status_timeout`
Timeout for requests to get snapshot status. Default is `5s`.
#### `create_upload_url_timeout`
Timeout for requests to create a presigned upload URL. Default is `5s`.
#### `report_event_timeout`
Timeout for requests to report an event. Default is `5s`.
#### `fetch_instance_timeout`
Timeout for requests to fetch an instance. Default is `5s`.
#### `create_access_policy_timeout`
Timeout for requests to create an access policy. Default is `5s`.
#### `fetch_access_policy_timeout`
Timeout for requests to fetch an access policy. Default is `5s`.
#### `delete_access_policy_timeout`
Timeout for requests to delete an access policy. Default is `5s`.
#### `domain`
Domain name used to access the cloud migration service. Default is `grafana.net`.
#### `snapshot_folder`
Folder used to store snapshot files. Default is empty (home dir).
#### `frontend_poll_interval`
Polling interval for the frontend UI while resources are migrating. Default is `2s`.
#### `alert_rules_state`
Controls how alert rules are migrated. Options are `paused` or `unchanged`. Default is `"paused"`.
{{< adomition type="note" >}}
For more information, refer to the [Prevent duplicated alert notifications](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/administration/migration-guide/cloud-migration-assistant/#prevent-duplicated-alert-notifications) documentation.
{{< /admonition >}}
#### `resource_storage_type`
Resource snapshot storage type. Options are `db` (database) or `fs` (file system). Default is `"db"`.

View File

@@ -22,7 +22,7 @@ weight: 100
# Node graph
Node graphs are useful when you need to visualize elements that are related to each other. This is done by displaying circles&mdash;or _nodes_&mdash;for each element you want to visualize, connected by lines&mdash;or _edges_. The visualization uses a directed force layout that positions the nodes into a network of connected circles.
Node graphs are useful when you need to visualize elements that are related to each other. This is done by displaying circles&mdash;or _nodes_&mdash;for each element you want to visualize, connected by lines&mdash;or _edges_. By default, the visualization uses a [layered layout](#layout-algorithm) that positions the nodes into a network of connected circles.
Node graphs display useful information about each node, as well as the relationships between them, allowing you to visualize complex infrastructure maps, hierarchies, or execution diagrams.
@@ -123,26 +123,32 @@ You can pan the view by clicking outside any node or edge and dragging your mous
Use the buttons in the lower right corner to zoom in or out. You can also use the mouse wheel or touchpad scroll, together with either Ctrl or Cmd key to do so.
### Switch layouts
Switch quickly between displaying the visualization in graph or grid [layout](#layout-algorithm).
Click a node and select either **Show in Grid layout** or **Show in Graph layout**, depending on the current layout of the visualization:
{{< figure src="/media/docs/grafana/panels-visualizations/screenshot-node-graph-grid-menu.png" max-width="750px" alt="Node graph in grid layout with node menu open" >}}
In grid layout, you can sort nodes by clicking on the stats inside the legend.
The marker next to the stat name shows which stat is currently used for sorting and the sorting direction:
{{< figure src="/media/docs/grafana/panels-visualizations/screenshot-node-graph-legend-sort.png" max-width="550px" alt="Node graph legend sorting" >}}
Switching between grid and other layouts this way only changes the layout temporarily.
The visualization maintains the layout algorithm selected in the panel editor, and reverts to it when the dashboard refreshes.
For more information about layouts, refer to [Layout algorithm](#layout-algorithm).
<!-- if you have the panel in grid layout and switch it to graph, is it switching to layered? -->
### Hidden nodes
The number of nodes shown at a given time is limited to maintain a reasonable visualization performance. Nodes that are not currently visible are hidden behind clickable markers that show an approximate number of hidden nodes that are connected by a particular edge. You can click on the marker to expand the graph around that node.
![Node graph exploration](/media/docs/grafana/panels-visualizations/node-graph-exploration-8.0-2.png 'Node graph exploration')
### Grid view
You can switch to the grid view to have a better overview of the most interesting nodes in the graph. Grid view shows nodes in a grid without edges and can be sorted by stats shown inside the node or by stats represented by the a colored border of the nodes.
![Node graph grid](/media/docs/grafana/panels-visualizations/screenshot-node-graph-grid-v11.3.png 'Node graph grid')
To sort the nodes, click on the stats inside the legend. The marker next to the stat name shows which stat is currently used for sorting and sorting direction.
![Node graph legend](/media/docs/grafana/panels-visualizations/screenshot-node-graph-legend-v11.3.png 'Node graph legend')
Click on the node and select "Show in Graph layout" option to switch back to graph layout and focus on the selected node, to show it in context of the full graph.
![Node graph grid to default](/media/docs/grafana/panels-visualizations/screenshot-node-graph-view-v11.3.png 'Node graph grid to default')
## Configuration options
{{< docs/shared lookup="visualizations/config-options-intro.md" source="grafana" version="<GRAFANA_VERSION>" >}}
@@ -155,7 +161,24 @@ Click on the node and select "Show in Graph layout" option to switch back to gra
Use the following options to refine your node graph visualization.
- **Zoom mode** - Choose how the node graph should handle zoom and scroll events.
#### Zoom mode
Choose how the node graph should handle zoom and scroll events:
- **Cooperative** - Allows you to scroll the visualization normally.
- **Greedy** - Reacts to all zoom gestures.
#### Layout algorithm
Choose how the visualization layout is generated:
- **Layered** - Default. Creates a predictable and orderly layout, especially useful for service graphs.
- **Force** - Uses a physics-based force layout algorithm that's useful with a large number of nodes (500+).
- **Grid** - Arranges nodes into a grid format to provide a better overview of the most interesting nodes in the graph. This layout shows nodes in a grid without edges and can be sorted by the stats shown inside the node or by the ones represented by the a colored border of the nodes.
{{< figure src="/media/docs/grafana/panels-visualizations/screenshot-node-graph-grid.png" max-width="650px" alt="Node graph in grid layout" >}}
For more information about using the graph in grid layout, refer to [Switch layouts](#switch-layouts).
### Nodes options
@@ -239,6 +262,6 @@ Optional fields:
| arc\_\_\* | number | Any field prefixed with `arc__` will be used to create the color circle around the node. All values in these fields should add up to 1. You can specify color using `config.color.fixedColor`. |
| detail\_\_\* | string/number | Any field prefixed with `detail__` will be shown in the header of context menu when clicked on the node. Use `config.displayName` for more human readable label. |
| color | string/number | Can be used to specify a single color instead of using the `arc__` fields to specify color sections. It can be either a string which should then be an acceptable HTML color string or it can be a number in which case the behavior depends on `field.config.color.mode` setting. This can be for example used to create gradient colors controlled by the field value. |
| icon | string | Name of the icon to show inside the node instead of the default stats. Only Grafana [built in icons](https://developers.grafana.com/ui/latest/index.html?path=/story/iconography-icon--icons-overview)) are allowed. |
| icon | string | Name of the icon to show inside the node instead of the default stats. Only Grafana [built in icons](https://developers.grafana.com/ui/latest/index.html?path=/story/iconography-icon--icons-overview) are allowed. |
| nodeRadius | number | Radius value in pixels. Used to manage node size. |
| highlighted | boolean | Sets whether the node should be highlighted. Useful for example to represent a specific path in the graph by highlighting several nodes and edges. Default: `false` |

View File

@@ -221,7 +221,7 @@ func (s *ServiceImpl) processAppPlugin(plugin pluginstore.Plugin, c *contextmode
// Add Service Center as a standalone nav item under Alerts & IRM
if alertsSection := treeRoot.FindById(navtree.NavIDAlertsAndIncidents); alertsSection != nil {
serviceLink := &navtree.NavLink{
Text: "Service Center",
Text: "Service center",
Id: "standalone-plugin-page-slo-services",
Url: s.cfg.AppSubURL + "/a/grafana-slo-app/services",
SortWeight: 1,

View File

@@ -171,7 +171,7 @@ function DashboardControlsRenderer({ model }: SceneComponentProps<DashboardContr
>
<div className={cx(styles.rightControls, editPanel && styles.rightControlsWrap)}>
{!hideTimeControls && (
<div className={styles.timeControls}>
<div className={styles.fixedControls}>
<timePicker.Component model={timePicker} />
<refreshPicker.Component model={refreshPicker} />
</div>
@@ -181,7 +181,11 @@ function DashboardControlsRenderer({ model }: SceneComponentProps<DashboardContr
<DashboardControlsButton dashboard={dashboard} />
</div>
)}
{config.featureToggles.dashboardNewLayouts && <DashboardControlActions dashboard={dashboard} />}
{config.featureToggles.dashboardNewLayouts && (
<div className={styles.fixedControls}>
<DashboardControlActions dashboard={dashboard} />
</div>
)}
{!hideLinksControls && !editPanel && <DashboardLinksControls links={links} dashboard={dashboard} />}
</div>
{!hideVariableControls && (
@@ -274,12 +278,12 @@ function getStyles(theme: GrafanaTheme2) {
display: 'flex',
gap: theme.spacing(1),
float: 'right',
alignItems: 'center',
alignItems: 'flex-start',
flexWrap: 'wrap',
maxWidth: '100%',
minWidth: 0,
}),
timeControls: css({
fixedControls: css({
display: 'flex',
justifyContent: 'flex-end',
gap: theme.spacing(1),