Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Il calcolo delle metriche consiste nel generare nuove metriche basate su log o metriche preesistenti per l'osservabilità dei dati. Calcoli le metriche in GDC configurando le regole di registrazione in una risorsa personalizzata LoggingRule. Le regole di registrazione precalcolano le espressioni necessarie di frequente o costose dal punto di vista computazionale. Queste regole salvano il risultato come un nuovo insieme di serie temporali. L'interrogazione del risultato precalcolato è più veloce dell'esecuzione dell'espressione originale ogni volta che è necessario. Questo precalcolo è particolarmente utile per i dashboard e gli avvisi complessi, che devono eseguire query sulla stessa espressione ripetutamente ogni volta che vengono aggiornati o valutati.
Configura le regole di registrazione nella risorsa personalizzata LoggingRule per calcolare le metriche in base ai dati di logging del sistema. La risorsa personalizzata LoggingRule contiene regole di registrazione che descrivono le condizioni per calcolare nuove metriche in base ai log preesistenti.
Prima di iniziare
Per ottenere le autorizzazioni necessarie per calcolare le metriche dai log, chiedi all'amministratore IAM del progetto di concederti uno dei seguenti ruoli nello spazio dei nomi del progetto:
Logging Rule Creator: crea risorse personalizzate LoggingRule. Richiedi il ruolo Creatore regole di Logging (loggingrule-creator).
Editor regole di logging: modifica le risorse personalizzate LoggingRule. Richiedi il ruolo Editor regole di Logging (loggingrule-editor).
Visualizzatore regole di logging: visualizza le risorse personalizzate LoggingRule. Richiedi il ruolo Visualizzatore regole di logging (loggingrule-viewer).
Creare regole di registrazione
Definisci un nome di record e un'espressione valida che valuti la regola. L'espressione deve essere risolta in un valore numerico per essere registrata come nuova metrica. Esegui il deployment della risorsa personalizzata nello spazio dei nomi del progetto sul cluster di amministrazione dell'organizzazione per creare le regole di registrazione per la piattaforma di osservabilità.
Segui i passaggi riportati di seguito per creare regole di record e calcolare le metriche nello spazio dei nomi del progetto:
Apri o crea il file YAML per la CR utilizzando il modello CR LoggingRule per le regole dei record di logging.
Nel campo namespace della CR, inserisci lo spazio dei nomi del progetto.
Nel campo name, inserisci il nome della configurazione della regola.
(Facoltativo) Puoi scegliere l'origine log nel campo source. Ad esempio, inserisci un valore come operational o audit.
Nel campo interval, inserisci il numero di secondi per la durata dell'intervallo di valutazione della regola.
(Facoltativo) Nel campo limit, inserisci il numero massimo di avvisi. Inserisci 0 per avvisi illimitati.
Nel campo recordRules, inserisci le seguenti informazioni per calcolare le metriche:
Nel campo record, inserisci il nome del record. Questo valore definisce la serie temporale in cui scrivere la regola del record e deve essere un nome di metrica valido.
Nel campo expr, inserisci un'espressione LogQL per la regola dei log.
Questa espressione deve essere risolta in un valore numerico per essere registrata come nuova metrica.
(Facoltativo) Nel campo labels, definisci le etichette che vuoi aggiungere o sovrascrivere come coppie chiave-valore.
Salva il file YAML del CR.
Esegui il deployment del CR nello spazio dei nomi del progetto del cluster di amministrazione per creare le regole dei record.
Regole per i record LoggingRule
Una risorsa personalizzata LoggingRule contiene regole di registrazione che descrivono le condizioni per calcolare nuove metriche in base ai dati di logging di sistema preesistenti per l'osservabilità.
Il seguente file YAML mostra un modello per il campo recordRules del CR LoggingRule.
# Configures either an alert or a target record for precomputationapiVersion:logging.gdc.goog/v1alpha1kind:LoggingRulemetadata:# Choose namespace that matches the project's namespace# Note: The alert or record will be produced in the same namespacenamespace:PROJECT_NAMESPACEname:alerting-configspec:# Choose which log source to base alerts on (Operational/Audit/Security Logs)# Optional, Default: Operationalsource:<string>
# Rule evaluation intervalinterval:<duration>
# Configure limit for number of alerts (0: no limit)# Optional, Default: 0 (no limit)limit:<int>
# Configure record rules to generate new metrics based on pre-existing logs.# Record rules generate metrics based on logs.# Use record rules for complex alerts, which query the same expression repeatedly every time they are evaluated.recordRules:# Define which timeseries to write to (must be a valid metric name)-record:<string>
# Define LogQL expression to evaluate for this rule# https://grafana.com/docs/loki/latest/rules/expr:<string>
# Define labels to add or overwrite# Optional, Map of {key, value} pairslabels:<labelname>:<labelvalue>
...
Sostituisci PROJECT_NAMESPACE con lo spazio dei nomi del tuo progetto.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[[["\u003cp\u003eMetrics can be calculated in GDC by configuring recording rules within a \u003ccode\u003eLoggingRule\u003c/code\u003e custom resource, precomputing frequently needed or complex expressions for faster querying.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eLoggingRule\u003c/code\u003e custom resource defines the conditions for creating new metrics derived from existing system logs, making it useful for dashboards and complex alerts.\u003c/p\u003e\n"],["\u003cp\u003eUsers require specific IAM roles such as Logging Rule Creator, Editor, or Viewer to interact with \u003ccode\u003eLoggingRule\u003c/code\u003e custom resources for calculating metrics.\u003c/p\u003e\n"],["\u003cp\u003eCreating a recording rule involves defining a record name and a LogQL expression that evaluates to a numeric value, and then deploying the custom resource within the project's namespace on the org admin cluster.\u003c/p\u003e\n"],["\u003cp\u003eWhen configuring a recording rule in the \u003ccode\u003eLoggingRule\u003c/code\u003e custom resource, you can specify the log source, evaluation interval, and limit for the number of alerts, along with the record name, expression, and optional labels.\u003c/p\u003e\n"]]],[],null,["# Calculate metrics from logs\n\nCalculating metrics means generating new metrics based on pre-existing logs or metrics for data observability. You calculate metrics in GDC by configuring recording rules in a `LoggingRule` custom resource. Recording rules precompute expressions that are frequently needed or computationally expensive. These rules save their result as a new set of time series. Querying the precomputed result is faster than executing the original expression whenever needed. This precomputation is especially useful for dashboards and complex alerts, which must query the same expression repeatedly every time they refresh or are evaluated.\n\nYou configure recording rules in the `LoggingRule` custom resource to calculate metrics based on system logging data. The `LoggingRule` custom resource contains recording rules that describe the conditions to calculate new metrics based on pre-existing logs.\n\nBefore you begin\n----------------\n\nTo get the permissions you need to calculate metrics from logs, ask your Project IAM Admin to grant you one of the following roles in your project namespace:\n\n- **Logging Rule Creator** : creates `LoggingRule` custom resources. Request the Logging Rule Creator (`loggingrule-creator`) role.\n- **Logging Rule Editor** : edits or modifies `LoggingRule` custom resources. Request the Logging Rule Editor (`loggingrule-editor`) role.\n- **Logging Rule Viewer** : views `LoggingRule` custom resources. Request the Logging Rule Viewer (`loggingrule-viewer`) role.\n\nCreate recording rules\n----------------------\n\nDefine a record name and a valid expression that evaluates the rule. The expression must resolve to a numeric value to record it as a new metric. Deploy the custom resource in your project namespace on the org admin cluster to create the recording rules for the Observability platform.\n| **Important:** To create rules, verify that a project is deployed with workloads. To have data your rules can act on, verify that you configured log collection.\n\nFor more information about recording rules for Observability, see \u003chttps://grafana.com/docs/loki/latest/rules/\u003e\n\nWork through the following steps to create record rules and calculate metrics in your project's namespace:\n\n1. Open or create the YAML file for the CR using [the `LoggingRule` CR](#loggingrule-recordrules) template for logging record rules.\n2. In the `namespace` field of the CR, enter your project's namespace.\n3. In the `name` field, enter the name for the rule configuration.\n4. Optional: You can choose the log source in the `source` field. For example, enter a value such as `operational` or `audit`.\n5. In the `interval` field, enter the number of seconds for the duration of the rule evaluation interval.\n6. Optional: In the `limit` field, enter the maximum number of alerts. Enter `0` for unlimited alerts.\n7. In the `recordRules` field, enter the following information to calculate metrics:\n\n - In the `record` field, enter the record name. This value defines the time series in which to write the record rule and it must be a valid metric name.\n - In the `expr` field, enter a LogQL expression for the log rule.\n\n This expression must resolve to a numeric value to be recorded as a new metric.\n - Optional: In the `labels` field, define the labels that you want to add or overwrite as key-value pairs.\n\n8. Save the YAML file of the CR.\n\n9. Deploy the CR in your project's namespace of the admin cluster to create the record rules.\n\nThe `LoggingRule` record rules\n------------------------------\n\nA `LoggingRule` custom resource contains recording rules that describe the conditions to calculate new metrics based on pre-existing system logging data for observability.\n\nThe following YAML file shows a template for the `recordRules` field of the `LoggingRule` CR. \n\n # Configures either an alert or a target record for precomputation\n apiVersion: logging.gdc.goog/v1alpha1\n kind: LoggingRule\n metadata:\n # Choose namespace that matches the project's namespace\n # Note: The alert or record will be produced in the same namespace\n namespace: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003ePROJECT_NAMESPACE\u003c/span\u003e\u003c/var\u003e\n name: alerting-config\n spec:\n # Choose which log source to base alerts on (Operational/Audit/Security Logs)\n # Optional, Default: Operational\n source: \u003cstring\u003e\n\n # Rule evaluation interval\n interval: \u003cduration\u003e\n\n # Configure limit for number of alerts (0: no limit)\n # Optional, Default: 0 (no limit)\n limit: \u003cint\u003e\n\n # Configure record rules to generate new metrics based on pre-existing logs.\n # Record rules generate metrics based on logs.\n # Use record rules for complex alerts, which query the same expression repeatedly every time they are evaluated.\n recordRules:\n # Define which timeseries to write to (must be a valid metric name)\n - record: \u003cstring\u003e\n\n # Define LogQL expression to evaluate for this rule\n # https://grafana.com/docs/loki/latest/rules/\n expr: \u003cstring\u003e\n\n # Define labels to add or overwrite\n # Optional, Map of {key, value} pairs\n labels:\n \u003clabelname\u003e: \u003clabelvalue\u003e\n ...\n\nReplace \u003cvar translate=\"no\"\u003ePROJECT_NAMESPACE\u003c/var\u003e with the namespace of your project."]]