nameOverride: loki-ha
loki:
  image:
    registry: 557537366020.dkr.ecr.us-west-2.amazonaws.com
    repository: third-party/grafana/loki
    tag: "3.5.3"
  auth_enabled: false
  storage:
    bucketNames:
      chunks: loki-prod-us-east-1-o11y
      ruler: loki-prod-us-east-1-o11y
      admin: loki-prod-us-east-1-o11y
    type: s3
    s3:
      region: us-east-1
  storage_config:
    boltdb_shipper:
      active_index_directory: /var/loki/boltdb-shipper-active
      cache_location: /var/loki/boltdb-shipper-cache
      cache_ttl: 24h
    tsdb_shipper:
      active_index_directory: /var/loki/tsdb-shipper-active
      cache_location: /var/loki/tsdb-shipper-cache
      cache_ttl: 24h
    named_stores:
      aws:
        s3_1:
          s3: s3://us-east-1/loki-prod-us-east-1-o11y
        s3_2:
          s3: s3://us-west-2/loki-prod-us-west-2-o11y
  server:
    grpc_server_max_recv_msg_size: 104857600
    grpc_server_max_send_msg_size: 104857600
  limits_config:
    allow_structured_metadata: false
    ingestion_rate_mb: 120
    ingestion_burst_size_mb: 240
    per_stream_rate_limit: 20MB
    per_stream_rate_limit_burst: 120MB
    max_entries_limit_per_query: 1000
    max_global_streams_per_user: 0
    retention_period: 2160h # 90 days
    max_query_length: 7d1h
    max_line_size: 0
    max_label_names_per_series: 30
  commonConfig:
    replication_factor: 1
  schemaConfig:
    configs:
      - from: 2023-08-17
        store: boltdb-shipper
        object_store: s3_1
        schema: v12
        index:
          prefix: loki_index_
          period: 24h
      - from: 2025-06-06
        store: tsdb
        object_store: s3_2
        schema: v13
        index:
          prefix: loki_tsdb_index_
          period: 24h
      - from: 2025-06-11
        store: tsdb
        object_store: s3_1
        schema: v13
        index:
          prefix: loki_tsdb_index_
          period: 24h
  rulerConfig:
    external_labels:
      o11y_k8s_id: o11y-prod-regional-us-east-1
      cloudProvider: aws
      component: observability-regional-server
    storage:
      type: local
      local:
        directory: /rules
    rule_path: /tmp/scratch
    alertmanager_url: http://alertmanager-operated.self-monitoring:9093
    ring:
      kvstore:
        store: inmemory
    enable_api: true
  compactor:
    retention_enabled: true
    delete_request_store: s3
    working_directory: /var/loki/retention
    compaction_interval: 10m
    retention_delete_delay: 2h
    retention_delete_worker_count: 100
  index_gateway:
    mode: ring
serviceAccount:
  annotations:
    eks.amazonaws.com/role-arn: arn:aws:iam::557537366020:role/loki-prod-role
write:
  replicas: 3
  autoscaling:
    enabled: true
    minReplicas: 2
    maxReplicas: 8
    targetCPUUtilizationPercentage: 90
    targetMemoryUtilizationPercentage: 80
    behavior:
      scaleUp:
        policies:
          - type: Pods
            value: 1
            periodSeconds: 900
        stabilizationWindowSeconds: 300
      scaleDown:
        policies:
          - type: Pods
            value: 1
            periodSeconds: 1800
        stabilizationWindowSeconds: 3600
  resources:
    limits:
      cpu: 3000m
      memory: 10Gi
    requests:
      cpu: 3000m
      memory: 6Gi
  nodeSelector:
    node_type: worker
  persistence:
    enableStatefulSetAutoDeletePVC: true
    size: 50Gi
    storageClass: prometheus.ssd
read:
  replicas: 2
  autoscaling:
    enabled: true
    minReplicas: 2
    maxReplicas: 8
    targetCPUUtilizationPercentage: 170
    targetMemoryUtilizationPercentage: 400
    behavior:
      scaleDown:
        stabilizationWindowSeconds: 3600
        policies:
          - type: Pods
            value: 1
            periodSeconds: 1800
      scaleUp:
        stabilizationWindowSeconds: 600
  resources:
    limits:
      cpu: 3000m
      memory: 10Gi
    requests:
      cpu: 1400m
      memory: 2Gi
  nodeSelector:
    node_type: worker
  persistence:
    size: 10Gi
    storageClass: prometheus.ssd
backend:
  replicas: 2
  resources:
    limits:
      cpu: "1"
      memory: 4Gi
    requests:
      cpu: 100m
      memory: 1Gi
  nodeSelector:
    node_type: worker
  persistence:
    size: 50Gi
    storageClass: prometheus.ssd
sidecar:
  rules:
    label: loki_rule
    labelValue: "true"
    folder: /rules/fake
test:
  enabled: false
lokiCanary:
  enabled: false
gateway:
  enabled: false
ruler:
  enabled: true # In order to enable rulerConfig
  replicas: 0
resultsCache:
  enabled: false
chunksCache:
  enabled: false
