Calcular métricas significa gerar novas métricas com base em registros ou métricas preexistentes para observabilidade de dados. Para calcular métricas no GDC, configure regras de gravação em um recurso personalizado LoggingRule. As regras de gravação pré-calculam expressões que são necessárias com frequência ou que exigem muita computação. Essas regras salvam o resultado como um novo conjunto de série temporal. Consultar o resultado pré-calculado é mais rápido do que executar a expressão original sempre que necessário. Essa pré-computação é especialmente útil para painéis e alertas complexos, que precisam consultar a mesma expressão repetidamente sempre que são atualizados ou avaliados.
Você configura regras de gravação no recurso personalizado LoggingRule para calcular métricas com base em dados de geração de registros do sistema. O recurso personalizado LoggingRule contém regras de gravação que descrevem as condições para calcular novas métricas com base em registros preexistentes.
Antes de começar
Para receber as permissões necessárias para calcular métricas com base em registros, peça ao administrador do IAM do projeto para conceder a você um dos seguintes papéis no namespace do projeto:
- Criador de regras de geração de registros: cria recursos personalizados
LoggingRule. Solicite o papel de criador de regras do Logging (loggingrule-creator). - Editor de regras de geração de registros: edita ou modifica recursos personalizados
LoggingRule. Solicite o papel de editor de regras de geração de registros (loggingrule-editor). - Visualizador de regras de geração de registros: mostra recursos personalizados
LoggingRule. Solicite o papel de leitor de regras do Logging (loggingrule-viewer).
Criar regras de gravação
Defina um nome de registro e uma expressão válida que avalie a regra. A expressão precisa ser resolvida como um valor numérico para ser registrada como uma nova métrica. Implante o recurso personalizado no namespace do projeto no cluster de administrador da organização para criar as regras de gravação da plataforma de observabilidade.
Para mais informações sobre regras de gravação para observabilidade, consulte https://grafana.com/docs/loki/latest/rules/
Siga as etapas abaixo para criar regras de registro e calcular métricas no namespace do seu projeto:
- Abra ou crie o arquivo YAML para o CR usando o modelo CR
LoggingRulepara regras de registros de registros. - No campo
namespacedo CR, insira o namespace do projeto. - No campo
name, insira o nome da configuração de regra. - Opcional: você pode escolher a origem do registro no campo
source. Por exemplo, insira um valor comooperationalouaudit. - No campo
interval, insira o número de segundos para a duração do intervalo de avaliação da regra. - Opcional: no campo
limit, insira o número máximo de alertas. Insira0para alertas ilimitados. No campo
recordRules, insira as seguintes informações para calcular métricas:- No campo
record, insira o nome do registro. Esse valor define a série temporal em que a regra de gravação será escrita e precisa ser um nome de métrica válido. No campo
expr, insira uma expressão LogQL para a regra de registro.Essa expressão precisa ser resolvida como um valor numérico para ser registrada como uma nova métrica.
Opcional: no campo
labels, defina os rótulos que você quer adicionar ou substituir como pares de chave-valor.
- No campo
Salve o arquivo YAML da CR.
Implante o CR no namespace do projeto do cluster de administrador para criar as regras de registro.
As regras de registro LoggingRule
Um recurso personalizado LoggingRule contém regras de gravação que descrevem as condições para calcular novas métricas com base em dados de registro do sistema preexistentes para observabilidade.
O arquivo YAML a seguir mostra um modelo para o campo recordRules da CR LoggingRule.
# Configures either an alert or a target record for precomputation
apiVersion: logging.gdc.goog/v1alpha1
kind: LoggingRule
metadata:
# Choose namespace that matches the project's namespace
# Note: The alert or record will be produced in the same namespace
namespace: PROJECT_NAMESPACE
name: alerting-config
spec:
# Choose which log source to base alerts on (Operational/Audit/Security Logs)
# Optional, Default: Operational
source: <string>
# Rule evaluation interval
interval: <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} pairs
labels:
<labelname>: <labelvalue>
...
Substitua PROJECT_NAMESPACE pelo namespace do projeto.