Skip to content

Grafana Alloy

sobre

Aqui instalamos o alloy com foco em enviar logs para o Loki.

o que preciso ajustar?

Ajuste a URL no arquivo de configuração

http://loki-gateway.monitoring.svc.cluster.local/loki/api/v1/push

Somente isso!

instalando

adicione o repositorio

helm repo add grafana https://grafana.github.io/helm-charts

crie o arquivo de configuração

vim alloy.yaml

coloque o conteúdo

alloy:
  configMap:
    content: |-
      logging {
        level = "debug"
        format = "logfmt"
      }
      discovery.kubernetes "pods" {
        role = "pod"
      }
      discovery.relabel "pods" {
        targets = discovery.kubernetes.pods.targets

        rule {
          source_labels = ["__meta_kubernetes_namespace"]
          target_label = "namespace"
          action = "replace"
        }

        rule {
          source_labels = ["__meta_kubernetes_pod_label_app_kubernetes_io_name"]
          target_label = "app"
          action = "replace"
        }

        rule {
          source_labels = ["__meta_kubernetes_pod_container_name"]
          target_label = "container"
          action = "replace"
        }

        rule {
          source_labels = ["__meta_kubernetes_pod_name"]
          target_label = "pod"
          action = "replace"
        }
      }
      loki.source.kubernetes "pods" {
        targets    = discovery.relabel.pods.output
        forward_to = [loki.process.process.receiver]
      }
      loki.process "process" {
        forward_to = [loki.write.loki.receiver]

        stage.drop {
          older_than          = "1h"
          drop_counter_reason = "too old"
        }
        stage.match {
          selector = "{instance=~\".*\"}"
          stage.json {
            expressions = {
              level = "\"level\"",
            }
          }
          stage.labels {
            values = {
              level = "level",
            }
          }
        }
        stage.label_drop {
          values = [ "service_name" ]
        }
      }
      loki.write "loki" {
        endpoint {
          url = "http://loki-gateway.monitoring.svc.cluster.local/loki/api/v1/push"
        }
      }
  mounts:
    varlog: true
    dockercontainers: true

  resources:
    limits:
      cpu: 200m
      memory: 128Mi
    requests:
      cpu: 100m
      memory: 128Mi

Instale

helm upgrade --install grafana-alloy grafana/alloy -n monitoring -f alloy.yaml