Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update memcached docker tag to v1.6.38 (main) #16853

Merged
merged 2 commits into from
Mar 24, 2025

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Mar 20, 2025

This PR contains the following updates:

Package Update Change
memcached patch 1.6.37-alpine -> 1.6.38-alpine

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Mar 20, 2025
@renovate renovate bot requested a review from a team as a code owner March 20, 2025 18:59
@renovate renovate bot enabled auto-merge (squash) March 20, 2025 18:59
Copy link
Contributor

Helm Diff Output - Summary

Default Values Scenario-diff-output
default, loki-release-chunks-cache, StatefulSet (apps) has changed:
  # Source: loki/templates/chunks-cache/statefulset-chunks-cache.yaml
  apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    name: loki-release-chunks-cache
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: "memcached-chunks-cache"
      name: "memcached-chunks-cache"
    annotations:
      {}
    namespace: "default"
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: "memcached-chunks-cache"
        name: "memcached-chunks-cache"
    updateStrategy:
      type: RollingUpdate
    serviceName: loki-release-chunks-cache

    template:
      metadata:
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: "memcached-chunks-cache"
          name: "memcached-chunks-cache"
        annotations:

      spec:
        serviceAccountName: loki
        securityContext:
          fsGroup: 11211
          runAsGroup: 11211
          runAsNonRoot: true
          runAsUser: 11211
        initContainers:
          []
        nodeSelector:
          {}
        affinity:
          {}
        topologySpreadConstraints:
          []
        tolerations:
          []
        terminationGracePeriodSeconds: 60
        containers:
          - name: memcached
-           image: memcached:1.6.37-alpine
+           image: memcached:1.6.38-alpine
            imagePullPolicy: IfNotPresent
            resources:
              limits:
                memory: 9830Mi
              requests:
                cpu: 500m
                memory: 9830Mi
            ports:
              - containerPort: 11211
                name: client
            args:
              - -m 8192
              - --extended=modern,track_sizes
              - -I 5m
              - -c 16384
              - -v
              - -u 11211
            env:
            envFrom:
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
          - name: exporter
            image: prom/memcached-exporter:v0.15.1
            imagePullPolicy: IfNotPresent
            ports:
              - containerPort: 9150
                name: http-metrics
            args:
              - "--memcached.address=localhost:11211"
              - "--web.listen-address=0.0.0.0:9150"
            resources:
              limits: {}
              requests: {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
default, loki-release-gateway, ConfigMap (v1) has changed:
  # Source: loki/templates/gateway/configmap-gateway.yaml
  apiVersion: v1
  kind: ConfigMap
  metadata:
    name: loki-release-gateway
    namespace: default
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: gateway
  data:
    nginx.conf: |    
      worker_processes  5;  ## Default: 1
      error_log  /dev/stderr;
      pid        /tmp/nginx.pid;
      worker_rlimit_nofile 8192;
      
      events {
        worker_connections  4096;  ## Default: 1024
      }
      
      http {
        client_body_temp_path /tmp/client_temp;
        proxy_temp_path       /tmp/proxy_temp_path;
        fastcgi_temp_path     /tmp/fastcgi_temp;
        uwsgi_temp_path       /tmp/uwsgi_temp;
        scgi_temp_path        /tmp/scgi_temp;
      
        client_max_body_size  4M;
      
        proxy_read_timeout    600; ## 10 minutes
        proxy_send_timeout    600;
        proxy_connect_timeout 600;
      
        proxy_http_version    1.1;
      
        default_type application/octet-stream;
        log_format   main '$remote_addr - $remote_user [$time_local]  $status '
              '"$request" $body_bytes_sent "$http_referer" '
              '"$http_user_agent" "$http_x_forwarded_for"';
        access_log   /dev/stderr  main;
      
        sendfile     on;
        tcp_nopush   on;
        resolver kube-dns.kube-system.svc.cluster.local.;
        
      
        server {
          listen             8080;
          listen             [::]:8080;
      
          location = / {
            return 200 'OK';
            auth_basic off;
          }
      
          ########################################################
          # Configure backend targets
          location ^~ /ui {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Distributor
          location = /api/prom/push {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/push {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /distributor/ring {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /otlp/v1/logs {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Ingester
          location = /flush {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /ingester/ {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /ingester {
            internal;        # to suppress 301
          }
      
          # Ring
          location = /ring {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # MemberListKV
          location = /memberlist {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Ruler
          location = /ruler/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /api/prom/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /api/prom/rules/ {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /loki/api/v1/rules/ {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /prometheus/api/v1/alerts {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /prometheus/api/v1/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # Compactor
          location = /compactor/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/delete {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/cache/generation_numbers {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # IndexGateway
          location = /indexgateway/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # QueryScheduler
          location = /scheduler/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # Config
          location = /config {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
      
          # QueryFrontend, Querier
          location = /api/prom/tail {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
          }
          location = /loki/api/v1/tail {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
          }
          location ^~ /api/prom/ {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
          }
          location = /api/prom {
            internal;        # to suppress 301
          }
+         # if the X-Query-Tags header is empty, set a noop= without a value as empty values are not logged
+         set $query_tags $http_x_query_tags;
+         if ($query_tags !~* '') {
+           set $query_tags "noop=";
+         }
          location ^~ /loki/api/v1/ {
+           # pass custom headers set by Grafana as X-Query-Tags which are logged as key/value pairs in metrics.go log messages
+           proxy_set_header X-Query-Tags "${query_tags},user=${http_x_grafana_user},dashboard_id=${http_x_dashboard_uid},dashboard_title=${http_x_dashboard_title},panel_id=${http_x_panel_id},panel_title=${http_x_panel_title},source_rule_uid=${http_x_rule_uid},rule_name=${http_x_rule_name},rule_folder=${http_x_rule_folder},rule_version=${http_x_rule_version},rule_source=${http_x_rule_source},rule_type=${http_x_rule_type}";
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1 {
            internal;        # to suppress 301
          }
        }
      }
default, loki-release-gateway, Deployment (apps) has changed:
  # Source: loki/templates/gateway/deployment-gateway-nginx.yaml
  apiVersion: apps/v1
  kind: Deployment
  metadata:
    name: loki-release-gateway
    namespace: default
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: gateway
  spec:
    replicas: 1
    strategy:
      type: RollingUpdate
    revisionHistoryLimit: 10
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: gateway
    template:
      metadata:
        annotations:
-         checksum/config: 90f56bc9f6570e5df3178f94edaf17ffb294465705d809700e96e47a8adff501
+         checksum/config: 440a9cd2e87de46e0aad42617818d58f1e2daacb1ae594bad1663931faa44ebc
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: gateway
      spec:
        serviceAccountName: loki
        enableServiceLinks: true
        
        securityContext:
          fsGroup: 101
          runAsGroup: 101
          runAsNonRoot: true
          runAsUser: 101
        terminationGracePeriodSeconds: 30
        containers:
          - name: nginx
            image: docker.io/nginxinc/nginx-unprivileged:1.27-alpine
            imagePullPolicy: IfNotPresent
            ports:
              - name: http-metrics
                containerPort: 8080
                protocol: TCP
            readinessProbe:
              httpGet:
                path: /
                port: http-metrics
              initialDelaySeconds: 15
              timeoutSeconds: 1
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
            volumeMounts:
              - name: config
                mountPath: /etc/nginx
              - name: tmp
                mountPath: /tmp
              - name: docker-entrypoint-d-override
                mountPath: /docker-entrypoint.d
            resources:
              {}
        affinity:
          podAntiAffinity:
            requiredDuringSchedulingIgnoredDuringExecution:
            - labelSelector:
                matchLabels:
                  app.kubernetes.io/component: gateway
              topologyKey: kubernetes.io/hostname
        volumes:
          - name: config
            configMap:
              name: loki-release-gateway
          - name: tmp
            emptyDir: {}
          - name: docker-entrypoint-d-override
            emptyDir: {}
default, loki-release-results-cache, StatefulSet (apps) has changed:
  # Source: loki/templates/results-cache/statefulset-results-cache.yaml
  apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    name: loki-release-results-cache
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: "memcached-results-cache"
      name: "memcached-results-cache"
    annotations:
      {}
    namespace: "default"
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: "memcached-results-cache"
        name: "memcached-results-cache"
    updateStrategy:
      type: RollingUpdate
    serviceName: loki-release-results-cache

    template:
      metadata:
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: "memcached-results-cache"
          name: "memcached-results-cache"
        annotations:

      spec:
        serviceAccountName: loki
        securityContext:
          fsGroup: 11211
          runAsGroup: 11211
          runAsNonRoot: true
          runAsUser: 11211
        initContainers:
          []
        nodeSelector:
          {}
        affinity:
          {}
        topologySpreadConstraints:
          []
        tolerations:
          []
        terminationGracePeriodSeconds: 60
        containers:
          - name: memcached
-           image: memcached:1.6.37-alpine
+           image: memcached:1.6.38-alpine
            imagePullPolicy: IfNotPresent
            resources:
              limits:
                memory: 1229Mi
              requests:
                cpu: 500m
                memory: 1229Mi
            ports:
              - containerPort: 11211
                name: client
            args:
              - -m 1024
              - --extended=modern,track_sizes
              - -I 5m
              - -c 16384
              - -v
              - -u 11211
            env:
            envFrom:
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
          - name: exporter
            image: prom/memcached-exporter:v0.15.1
            imagePullPolicy: IfNotPresent
            ports:
              - containerPort: 9150
                name: http-metrics
            args:
              - "--memcached.address=localhost:11211"
              - "--web.listen-address=0.0.0.0:9150"
            resources:
              limits: {}
              requests: {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
Ingress Values Scenario-diff-output
default, loki-release-chunks-cache, StatefulSet (apps) has changed:
  # Source: loki/templates/chunks-cache/statefulset-chunks-cache.yaml
  apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    name: loki-release-chunks-cache
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: "memcached-chunks-cache"
      name: "memcached-chunks-cache"
    annotations:
      {}
    namespace: "default"
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: "memcached-chunks-cache"
        name: "memcached-chunks-cache"
    updateStrategy:
      type: RollingUpdate
    serviceName: loki-release-chunks-cache

    template:
      metadata:
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: "memcached-chunks-cache"
          name: "memcached-chunks-cache"
        annotations:

      spec:
        serviceAccountName: loki
        securityContext:
          fsGroup: 11211
          runAsGroup: 11211
          runAsNonRoot: true
          runAsUser: 11211
        initContainers:
          []
        nodeSelector:
          {}
        affinity:
          {}
        topologySpreadConstraints:
          []
        tolerations:
          []
        terminationGracePeriodSeconds: 60
        containers:
          - name: memcached
-           image: memcached:1.6.37-alpine
+           image: memcached:1.6.38-alpine
            imagePullPolicy: IfNotPresent
            resources:
              limits:
                memory: 9830Mi
              requests:
                cpu: 500m
                memory: 9830Mi
            ports:
              - containerPort: 11211
                name: client
            args:
              - -m 8192
              - --extended=modern,track_sizes
              - -I 5m
              - -c 16384
              - -v
              - -u 11211
            env:
            envFrom:
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
          - name: exporter
            image: prom/memcached-exporter:v0.15.1
            imagePullPolicy: IfNotPresent
            ports:
              - containerPort: 9150
                name: http-metrics
            args:
              - "--memcached.address=localhost:11211"
              - "--web.listen-address=0.0.0.0:9150"
            resources:
              limits: {}
              requests: {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
default, loki-release-gateway, ConfigMap (v1) has changed:
  # Source: loki/templates/gateway/configmap-gateway.yaml
  apiVersion: v1
  kind: ConfigMap
  metadata:
    name: loki-release-gateway
    namespace: default
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: gateway
  data:
    nginx.conf: |    
      worker_processes  5;  ## Default: 1
      error_log  /dev/stderr;
      pid        /tmp/nginx.pid;
      worker_rlimit_nofile 8192;
      
      events {
        worker_connections  4096;  ## Default: 1024
      }
      
      http {
        client_body_temp_path /tmp/client_temp;
        proxy_temp_path       /tmp/proxy_temp_path;
        fastcgi_temp_path     /tmp/fastcgi_temp;
        uwsgi_temp_path       /tmp/uwsgi_temp;
        scgi_temp_path        /tmp/scgi_temp;
      
        client_max_body_size  4M;
      
        proxy_read_timeout    600; ## 10 minutes
        proxy_send_timeout    600;
        proxy_connect_timeout 600;
      
        proxy_http_version    1.1;
      
        default_type application/octet-stream;
        log_format   main '$remote_addr - $remote_user [$time_local]  $status '
              '"$request" $body_bytes_sent "$http_referer" '
              '"$http_user_agent" "$http_x_forwarded_for"';
        access_log   /dev/stderr  main;
      
        sendfile     on;
        tcp_nopush   on;
        resolver kube-dns.kube-system.svc.cluster.local.;
        
      
        server {
          listen             8080;
          listen             [::]:8080;
      
          location = / {
            return 200 'OK';
            auth_basic off;
          }
      
          ########################################################
          # Configure backend targets
          location ^~ /ui {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Distributor
          location = /api/prom/push {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/push {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /distributor/ring {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /otlp/v1/logs {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Ingester
          location = /flush {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /ingester/ {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /ingester {
            internal;        # to suppress 301
          }
      
          # Ring
          location = /ring {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # MemberListKV
          location = /memberlist {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Ruler
          location = /ruler/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /api/prom/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /api/prom/rules/ {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /loki/api/v1/rules/ {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /prometheus/api/v1/alerts {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /prometheus/api/v1/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # Compactor
          location = /compactor/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/delete {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/cache/generation_numbers {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # IndexGateway
          location = /indexgateway/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # QueryScheduler
          location = /scheduler/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # Config
          location = /config {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
      
          # QueryFrontend, Querier
          location = /api/prom/tail {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
          }
          location = /loki/api/v1/tail {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
          }
          location ^~ /api/prom/ {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
          }
          location = /api/prom {
            internal;        # to suppress 301
          }
+         # if the X-Query-Tags header is empty, set a noop= without a value as empty values are not logged
+         set $query_tags $http_x_query_tags;
+         if ($query_tags !~* '') {
+           set $query_tags "noop=";
+         }
          location ^~ /loki/api/v1/ {
+           # pass custom headers set by Grafana as X-Query-Tags which are logged as key/value pairs in metrics.go log messages
+           proxy_set_header X-Query-Tags "${query_tags},user=${http_x_grafana_user},dashboard_id=${http_x_dashboard_uid},dashboard_title=${http_x_dashboard_title},panel_id=${http_x_panel_id},panel_title=${http_x_panel_title},source_rule_uid=${http_x_rule_uid},rule_name=${http_x_rule_name},rule_folder=${http_x_rule_folder},rule_version=${http_x_rule_version},rule_source=${http_x_rule_source},rule_type=${http_x_rule_type}";
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1 {
            internal;        # to suppress 301
          }
        }
      }
default, loki-release-gateway, Deployment (apps) has changed:
  # Source: loki/templates/gateway/deployment-gateway-nginx.yaml
  apiVersion: apps/v1
  kind: Deployment
  metadata:
    name: loki-release-gateway
    namespace: default
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: gateway
  spec:
    replicas: 1
    strategy:
      type: RollingUpdate
    revisionHistoryLimit: 10
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: gateway
    template:
      metadata:
        annotations:
-         checksum/config: 90f56bc9f6570e5df3178f94edaf17ffb294465705d809700e96e47a8adff501
+         checksum/config: 440a9cd2e87de46e0aad42617818d58f1e2daacb1ae594bad1663931faa44ebc
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: gateway
      spec:
        serviceAccountName: loki
        enableServiceLinks: true
        
        securityContext:
          fsGroup: 101
          runAsGroup: 101
          runAsNonRoot: true
          runAsUser: 101
        terminationGracePeriodSeconds: 30
        containers:
          - name: nginx
            image: docker.io/nginxinc/nginx-unprivileged:1.27-alpine
            imagePullPolicy: IfNotPresent
            ports:
              - name: http-metrics
                containerPort: 8080
                protocol: TCP
            readinessProbe:
              httpGet:
                path: /
                port: http-metrics
              initialDelaySeconds: 15
              timeoutSeconds: 1
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
            volumeMounts:
              - name: config
                mountPath: /etc/nginx
              - name: tmp
                mountPath: /tmp
              - name: docker-entrypoint-d-override
                mountPath: /docker-entrypoint.d
            resources:
              {}
        affinity:
          podAntiAffinity:
            requiredDuringSchedulingIgnoredDuringExecution:
            - labelSelector:
                matchLabels:
                  app.kubernetes.io/component: gateway
              topologyKey: kubernetes.io/hostname
        volumes:
          - name: config
            configMap:
              name: loki-release-gateway
          - name: tmp
            emptyDir: {}
          - name: docker-entrypoint-d-override
            emptyDir: {}
default, loki-release-results-cache, StatefulSet (apps) has changed:
  # Source: loki/templates/results-cache/statefulset-results-cache.yaml
  apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    name: loki-release-results-cache
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: "memcached-results-cache"
      name: "memcached-results-cache"
    annotations:
      {}
    namespace: "default"
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: "memcached-results-cache"
        name: "memcached-results-cache"
    updateStrategy:
      type: RollingUpdate
    serviceName: loki-release-results-cache

    template:
      metadata:
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: "memcached-results-cache"
          name: "memcached-results-cache"
        annotations:

      spec:
        serviceAccountName: loki
        securityContext:
          fsGroup: 11211
          runAsGroup: 11211
          runAsNonRoot: true
          runAsUser: 11211
        initContainers:
          []
        nodeSelector:
          {}
        affinity:
          {}
        topologySpreadConstraints:
          []
        tolerations:
          []
        terminationGracePeriodSeconds: 60
        containers:
          - name: memcached
-           image: memcached:1.6.37-alpine
+           image: memcached:1.6.38-alpine
            imagePullPolicy: IfNotPresent
            resources:
              limits:
                memory: 1229Mi
              requests:
                cpu: 500m
                memory: 1229Mi
            ports:
              - containerPort: 11211
                name: client
            args:
              - -m 1024
              - --extended=modern,track_sizes
              - -I 5m
              - -c 16384
              - -v
              - -u 11211
            env:
            envFrom:
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
          - name: exporter
            image: prom/memcached-exporter:v0.15.1
            imagePullPolicy: IfNotPresent
            ports:
              - containerPort: 9150
                name: http-metrics
            args:
              - "--memcached.address=localhost:11211"
              - "--web.listen-address=0.0.0.0:9150"
            resources:
              limits: {}
              requests: {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
Legacy Monitoring Values Scenario-diff-output
default, loki-release-chunks-cache, StatefulSet (apps) has changed:
  # Source: loki/templates/chunks-cache/statefulset-chunks-cache.yaml
  apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    name: loki-release-chunks-cache
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: "memcached-chunks-cache"
      name: "memcached-chunks-cache"
    annotations:
      {}
    namespace: "default"
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: "memcached-chunks-cache"
        name: "memcached-chunks-cache"
    updateStrategy:
      type: RollingUpdate
    serviceName: loki-release-chunks-cache

    template:
      metadata:
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: "memcached-chunks-cache"
          name: "memcached-chunks-cache"
        annotations:

      spec:
        serviceAccountName: loki
        securityContext:
          fsGroup: 11211
          runAsGroup: 11211
          runAsNonRoot: true
          runAsUser: 11211
        initContainers:
          []
        nodeSelector:
          {}
        affinity:
          {}
        topologySpreadConstraints:
          []
        tolerations:
          []
        terminationGracePeriodSeconds: 60
        containers:
          - name: memcached
-           image: memcached:1.6.37-alpine
+           image: memcached:1.6.38-alpine
            imagePullPolicy: IfNotPresent
            resources:
              limits:
                memory: 9830Mi
              requests:
                cpu: 500m
                memory: 9830Mi
            ports:
              - containerPort: 11211
                name: client
            args:
              - -m 8192
              - --extended=modern,track_sizes
              - -I 5m
              - -c 16384
              - -v
              - -u 11211
            env:
            envFrom:
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
          - name: exporter
            image: prom/memcached-exporter:v0.15.1
            imagePullPolicy: IfNotPresent
            ports:
              - containerPort: 9150
                name: http-metrics
            args:
              - "--memcached.address=localhost:11211"
              - "--web.listen-address=0.0.0.0:9150"
            resources:
              limits: {}
              requests: {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
default, loki-release-gateway, ConfigMap (v1) has changed:
  # Source: loki/templates/gateway/configmap-gateway.yaml
  apiVersion: v1
  kind: ConfigMap
  metadata:
    name: loki-release-gateway
    namespace: default
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: gateway
  data:
    nginx.conf: |    
      worker_processes  5;  ## Default: 1
      error_log  /dev/stderr;
      pid        /tmp/nginx.pid;
      worker_rlimit_nofile 8192;
      
      events {
        worker_connections  4096;  ## Default: 1024
      }
      
      http {
        client_body_temp_path /tmp/client_temp;
        proxy_temp_path       /tmp/proxy_temp_path;
        fastcgi_temp_path     /tmp/fastcgi_temp;
        uwsgi_temp_path       /tmp/uwsgi_temp;
        scgi_temp_path        /tmp/scgi_temp;
      
        client_max_body_size  4M;
      
        proxy_read_timeout    600; ## 10 minutes
        proxy_send_timeout    600;
        proxy_connect_timeout 600;
      
        proxy_http_version    1.1;
      
        default_type application/octet-stream;
        log_format   main '$remote_addr - $remote_user [$time_local]  $status '
              '"$request" $body_bytes_sent "$http_referer" '
              '"$http_user_agent" "$http_x_forwarded_for"';
        access_log   /dev/stderr  main;
      
        sendfile     on;
        tcp_nopush   on;
        resolver kube-dns.kube-system.svc.cluster.local.;
        
      
        server {
          listen             8080;
          listen             [::]:8080;
      
          location = / {
            return 200 'OK';
            auth_basic off;
          }
      
          ########################################################
          # Configure backend targets
          location ^~ /ui {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Distributor
          location = /api/prom/push {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/push {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /distributor/ring {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /otlp/v1/logs {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Ingester
          location = /flush {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /ingester/ {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
          location = /ingester {
            internal;        # to suppress 301
          }
      
          # Ring
          location = /ring {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # MemberListKV
          location = /memberlist {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
          # Ruler
          location = /ruler/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /api/prom/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /api/prom/rules/ {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /loki/api/v1/rules/ {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /prometheus/api/v1/alerts {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /prometheus/api/v1/rules {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # Compactor
          location = /compactor/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/delete {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/cache/generation_numbers {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # IndexGateway
          location = /indexgateway/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # QueryScheduler
          location = /scheduler/ring {
            proxy_pass       http://loki-backend.default.svc.cluster.local:3100$request_uri;
          }
      
          # Config
          location = /config {
            proxy_pass       http://loki-write.default.svc.cluster.local:3100$request_uri;
          }
      
      
          # QueryFrontend, Querier
          location = /api/prom/tail {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
          }
          location = /loki/api/v1/tail {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
          }
          location ^~ /api/prom/ {
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
          }
          location = /api/prom {
            internal;        # to suppress 301
          }
+         # if the X-Query-Tags header is empty, set a noop= without a value as empty values are not logged
+         set $query_tags $http_x_query_tags;
+         if ($query_tags !~* '') {
+           set $query_tags "noop=";
+         }
          location ^~ /loki/api/v1/ {
+           # pass custom headers set by Grafana as X-Query-Tags which are logged as key/value pairs in metrics.go log messages
+           proxy_set_header X-Query-Tags "${query_tags},user=${http_x_grafana_user},dashboard_id=${http_x_dashboard_uid},dashboard_title=${http_x_dashboard_title},panel_id=${http_x_panel_id},panel_title=${http_x_panel_title},source_rule_uid=${http_x_rule_uid},rule_name=${http_x_rule_name},rule_folder=${http_x_rule_folder},rule_version=${http_x_rule_version},rule_source=${http_x_rule_source},rule_type=${http_x_rule_type}";
            proxy_pass       http://loki-read.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1 {
            internal;        # to suppress 301
          }
        }
      }
default, loki-release-gateway, Deployment (apps) has changed:
  # Source: loki/templates/gateway/deployment-gateway-nginx.yaml
  apiVersion: apps/v1
  kind: Deployment
  metadata:
    name: loki-release-gateway
    namespace: default
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: gateway
  spec:
    replicas: 1
    strategy:
      type: RollingUpdate
    revisionHistoryLimit: 10
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: gateway
    template:
      metadata:
        annotations:
-         checksum/config: 90f56bc9f6570e5df3178f94edaf17ffb294465705d809700e96e47a8adff501
+         checksum/config: 440a9cd2e87de46e0aad42617818d58f1e2daacb1ae594bad1663931faa44ebc
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: gateway
      spec:
        serviceAccountName: loki
        enableServiceLinks: true
        
        securityContext:
          fsGroup: 101
          runAsGroup: 101
          runAsNonRoot: true
          runAsUser: 101
        terminationGracePeriodSeconds: 30
        containers:
          - name: nginx
            image: docker.io/nginxinc/nginx-unprivileged:1.27-alpine
            imagePullPolicy: IfNotPresent
            ports:
              - name: http-metrics
                containerPort: 8080
                protocol: TCP
            readinessProbe:
              httpGet:
                path: /
                port: http-metrics
              initialDelaySeconds: 15
              timeoutSeconds: 1
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
            volumeMounts:
              - name: config
                mountPath: /etc/nginx
              - name: tmp
                mountPath: /tmp
              - name: docker-entrypoint-d-override
                mountPath: /docker-entrypoint.d
            resources:
              {}
        affinity:
          podAntiAffinity:
            requiredDuringSchedulingIgnoredDuringExecution:
            - labelSelector:
                matchLabels:
                  app.kubernetes.io/component: gateway
              topologyKey: kubernetes.io/hostname
        volumes:
          - name: config
            configMap:
              name: loki-release-gateway
          - name: tmp
            emptyDir: {}
          - name: docker-entrypoint-d-override
            emptyDir: {}
default, loki-release-results-cache, StatefulSet (apps) has changed:
  # Source: loki/templates/results-cache/statefulset-results-cache.yaml
  apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    name: loki-release-results-cache
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: "memcached-results-cache"
      name: "memcached-results-cache"
    annotations:
      {}
    namespace: "default"
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: "memcached-results-cache"
        name: "memcached-results-cache"
    updateStrategy:
      type: RollingUpdate
    serviceName: loki-release-results-cache

    template:
      metadata:
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: "memcached-results-cache"
          name: "memcached-results-cache"
        annotations:

      spec:
        serviceAccountName: loki
        securityContext:
          fsGroup: 11211
          runAsGroup: 11211
          runAsNonRoot: true
          runAsUser: 11211
        initContainers:
          []
        nodeSelector:
          {}
        affinity:
          {}
        topologySpreadConstraints:
          []
        tolerations:
          []
        terminationGracePeriodSeconds: 60
        containers:
          - name: memcached
-           image: memcached:1.6.37-alpine
+           image: memcached:1.6.38-alpine
            imagePullPolicy: IfNotPresent
            resources:
              limits:
                memory: 1229Mi
              requests:
                cpu: 500m
                memory: 1229Mi
            ports:
              - containerPort: 11211
                name: client
            args:
              - -m 1024
              - --extended=modern,track_sizes
              - -I 5m
              - -c 16384
              - -v
              - -u 11211
            env:
            envFrom:
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
          - name: exporter
            image: prom/memcached-exporter:v0.15.1
            imagePullPolicy: IfNotPresent
            ports:
              - containerPort: 9150
                name: http-metrics
            args:
              - "--memcached.address=localhost:11211"
              - "--web.listen-address=0.0.0.0:9150"
            resources:
              limits: {}
              requests: {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
Simple Scalable AWS Kube IRSA Values Scenario-diff-output
1310c1310
<           image: memcached:1.6.38-alpine
---
>           image: memcached:1.6.37-alpine
1412c1412
<           image: memcached:1.6.38-alpine
---
>           image: memcached:1.6.37-alpine
Simple Thanos Values Scenario-diff-output
1882c1882
<           image: memcached:1.6.38-alpine
---
>           image: memcached:1.6.37-alpine
1984c1984
<           image: memcached:1.6.38-alpine
---
>           image: memcached:1.6.37-alpine
Single Binary Scenario-diff-output
default, loki-release-chunks-cache, StatefulSet (apps) has changed:
  # Source: loki/templates/chunks-cache/statefulset-chunks-cache.yaml
  apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    name: loki-release-chunks-cache
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: "memcached-chunks-cache"
      name: "memcached-chunks-cache"
    annotations:
      {}
    namespace: "default"
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: "memcached-chunks-cache"
        name: "memcached-chunks-cache"
    updateStrategy:
      type: RollingUpdate
    serviceName: loki-release-chunks-cache

    template:
      metadata:
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: "memcached-chunks-cache"
          name: "memcached-chunks-cache"
        annotations:

      spec:
        serviceAccountName: loki
        securityContext:
          fsGroup: 11211
          runAsGroup: 11211
          runAsNonRoot: true
          runAsUser: 11211
        initContainers:
          []
        nodeSelector:
          {}
        affinity:
          {}
        topologySpreadConstraints:
          []
        tolerations:
          []
        terminationGracePeriodSeconds: 60
        containers:
          - name: memcached
-           image: memcached:1.6.37-alpine
+           image: memcached:1.6.38-alpine
            imagePullPolicy: IfNotPresent
            resources:
              limits:
                memory: 9830Mi
              requests:
                cpu: 500m
                memory: 9830Mi
            ports:
              - containerPort: 11211
                name: client
            args:
              - -m 8192
              - --extended=modern,track_sizes
              - -I 5m
              - -c 16384
              - -v
              - -u 11211
            env:
            envFrom:
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
          - name: exporter
            image: prom/memcached-exporter:v0.15.1
            imagePullPolicy: IfNotPresent
            ports:
              - containerPort: 9150
                name: http-metrics
            args:
              - "--memcached.address=localhost:11211"
              - "--web.listen-address=0.0.0.0:9150"
            resources:
              limits: {}
              requests: {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
default, loki-release-gateway, ConfigMap (v1) has changed:
  # Source: loki/templates/gateway/configmap-gateway.yaml
  apiVersion: v1
  kind: ConfigMap
  metadata:
    name: loki-release-gateway
    namespace: default
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: gateway
  data:
    nginx.conf: |    
      worker_processes  5;  ## Default: 1
      error_log  /dev/stderr;
      pid        /tmp/nginx.pid;
      worker_rlimit_nofile 8192;
      
      events {
        worker_connections  4096;  ## Default: 1024
      }
      
      http {
        client_body_temp_path /tmp/client_temp;
        proxy_temp_path       /tmp/proxy_temp_path;
        fastcgi_temp_path     /tmp/fastcgi_temp;
        uwsgi_temp_path       /tmp/uwsgi_temp;
        scgi_temp_path        /tmp/scgi_temp;
      
        client_max_body_size  4M;
      
        proxy_read_timeout    600; ## 10 minutes
        proxy_send_timeout    600;
        proxy_connect_timeout 600;
      
        proxy_http_version    1.1;
      
        default_type application/octet-stream;
        log_format   main '$remote_addr - $remote_user [$time_local]  $status '
              '"$request" $body_bytes_sent "$http_referer" '
              '"$http_user_agent" "$http_x_forwarded_for"';
        access_log   /dev/stderr  main;
      
        sendfile     on;
        tcp_nopush   on;
        resolver kube-dns.kube-system.svc.cluster.local.;
        
      
        server {
          listen             8080;
          listen             [::]:8080;
      
          location = / {
            return 200 'OK';
            auth_basic off;
          }
      
          ########################################################
          # Configure backend targets
          location ^~ /ui {
            proxy_pass       http://loki-release-distributor.default.svc.cluster.local:3100$request_uri;
          }
      
          # Distributor
          location = /api/prom/push {
            proxy_pass       http://loki-release-distributor.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/push {
            proxy_pass       http://loki-release-distributor.default.svc.cluster.local:3100$request_uri;
          }
          location = /distributor/ring {
            proxy_pass       http://loki-release-distributor.default.svc.cluster.local:3100$request_uri;
          }
          location = /otlp/v1/logs {
            proxy_pass       http://loki-release-distributor.default.svc.cluster.local:3100$request_uri;
          }
      
          # Ingester
          location = /flush {
            proxy_pass       http://loki-release-ingester.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /ingester/ {
            proxy_pass       http://loki-release-ingester.default.svc.cluster.local:3100$request_uri;
          }
          location = /ingester {
            internal;        # to suppress 301
          }
      
          # Ring
          location = /ring {
            proxy_pass       http://loki-release-ingester.default.svc.cluster.local:3100$request_uri;
          }
      
          # MemberListKV
          location = /memberlist {
            proxy_pass       http://loki-release-ingester.default.svc.cluster.local:3100$request_uri;
          }
      
          # Ruler
          location = /ruler/ring {
            proxy_pass       http://loki-release-ruler.default.svc.cluster.local:3100$request_uri;
          }
          location = /api/prom/rules {
            proxy_pass       http://loki-release-ruler.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /api/prom/rules/ {
            proxy_pass       http://loki-release-ruler.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/rules {
            proxy_pass       http://loki-release-ruler.default.svc.cluster.local:3100$request_uri;
          }
          location ^~ /loki/api/v1/rules/ {
            proxy_pass       http://loki-release-ruler.default.svc.cluster.local:3100$request_uri;
          }
          location = /prometheus/api/v1/alerts {
            proxy_pass       http://loki-release-ruler.default.svc.cluster.local:3100$request_uri;
          }
          location = /prometheus/api/v1/rules {
            proxy_pass       http://loki-release-ruler.default.svc.cluster.local:3100$request_uri;
          }
      
          # Compactor
          location = /compactor/ring {
            proxy_pass       http://loki-release-compactor.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/delete {
            proxy_pass       http://loki-release-compactor.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1/cache/generation_numbers {
            proxy_pass       http://loki-release-compactor.default.svc.cluster.local:3100$request_uri;
          }
      
          # IndexGateway
          location = /indexgateway/ring {
            proxy_pass       http://loki-release-index-gateway.default.svc.cluster.local:3100$request_uri;
          }
      
          # QueryScheduler
          location = /scheduler/ring {
            proxy_pass       http://loki-release-query-scheduler.default.svc.cluster.local:3100$request_uri;
          }
      
          # Config
          location = /config {
            proxy_pass       http://loki-release-ingester.default.svc.cluster.local:3100$request_uri;
          }
      
      
          # QueryFrontend, Querier
          location = /api/prom/tail {
            proxy_pass       http://loki-release-query-frontend.default.svc.cluster.local:3100$request_uri;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
          }
          location = /loki/api/v1/tail {
            proxy_pass       http://loki-release-query-frontend.default.svc.cluster.local:3100$request_uri;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
          }
          location ^~ /api/prom/ {
            proxy_pass       http://loki-release-query-frontend.default.svc.cluster.local:3100$request_uri;
          }
          location = /api/prom {
            internal;        # to suppress 301
          }
+         # if the X-Query-Tags header is empty, set a noop= without a value as empty values are not logged
+         set $query_tags $http_x_query_tags;
+         if ($query_tags !~* '') {
+           set $query_tags "noop=";
+         }
          location ^~ /loki/api/v1/ {
+           # pass custom headers set by Grafana as X-Query-Tags which are logged as key/value pairs in metrics.go log messages
+           proxy_set_header X-Query-Tags "${query_tags},user=${http_x_grafana_user},dashboard_id=${http_x_dashboard_uid},dashboard_title=${http_x_dashboard_title},panel_id=${http_x_panel_id},panel_title=${http_x_panel_title},source_rule_uid=${http_x_rule_uid},rule_name=${http_x_rule_name},rule_folder=${http_x_rule_folder},rule_version=${http_x_rule_version},rule_source=${http_x_rule_source},rule_type=${http_x_rule_type}";
            proxy_pass       http://loki-release-query-frontend.default.svc.cluster.local:3100$request_uri;
          }
          location = /loki/api/v1 {
            internal;        # to suppress 301
          }
        }
      }
default, loki-release-gateway, Deployment (apps) has changed:
  # Source: loki/templates/gateway/deployment-gateway-nginx.yaml
  apiVersion: apps/v1
  kind: Deployment
  metadata:
    name: loki-release-gateway
    namespace: default
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: gateway
  spec:
    replicas: 1
    strategy:
      type: RollingUpdate
    revisionHistoryLimit: 10
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: gateway
    template:
      metadata:
        annotations:
-         checksum/config: 2cb6130539bb9f6062fcb86fd591a4a60bbb963d70c2bb4c0804d9c8413ad6d0
+         checksum/config: 4850c7c0a78abf034531d9e7c4c36c4bf7f5d3cbe50cc7ef0f140b3137d94e91
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: gateway
      spec:
        serviceAccountName: loki
        enableServiceLinks: true
        
        securityContext:
          fsGroup: 101
          runAsGroup: 101
          runAsNonRoot: true
          runAsUser: 101
        terminationGracePeriodSeconds: 30
        containers:
          - name: nginx
            image: docker.io/nginxinc/nginx-unprivileged:1.27-alpine
            imagePullPolicy: IfNotPresent
            ports:
              - name: http-metrics
                containerPort: 8080
                protocol: TCP
            readinessProbe:
              httpGet:
                path: /
                port: http-metrics
              initialDelaySeconds: 15
              timeoutSeconds: 1
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
            volumeMounts:
              - name: config
                mountPath: /etc/nginx
              - name: tmp
                mountPath: /tmp
              - name: docker-entrypoint-d-override
                mountPath: /docker-entrypoint.d
            resources:
              {}
        affinity:
          podAntiAffinity:
            requiredDuringSchedulingIgnoredDuringExecution:
            - labelSelector:
                matchLabels:
                  app.kubernetes.io/component: gateway
              topologyKey: kubernetes.io/hostname
        volumes:
          - name: config
            configMap:
              name: loki-release-gateway
          - name: tmp
            emptyDir: {}
          - name: docker-entrypoint-d-override
            emptyDir: {}
default, loki-release-results-cache, StatefulSet (apps) has changed:
  # Source: loki/templates/results-cache/statefulset-results-cache.yaml
  apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    name: loki-release-results-cache
    labels:
      helm.sh/chart: loki-6.28.0
      app.kubernetes.io/name: loki
      app.kubernetes.io/instance: loki-release
      app.kubernetes.io/version: "3.4.2"
      app.kubernetes.io/component: "memcached-results-cache"
      name: "memcached-results-cache"
    annotations:
      {}
    namespace: "default"
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: loki
        app.kubernetes.io/instance: loki-release
        app.kubernetes.io/component: "memcached-results-cache"
        name: "memcached-results-cache"
    updateStrategy:
      type: RollingUpdate
    serviceName: loki-release-results-cache

    template:
      metadata:
        labels:
          app.kubernetes.io/name: loki
          app.kubernetes.io/instance: loki-release
          app.kubernetes.io/component: "memcached-results-cache"
          name: "memcached-results-cache"
        annotations:

      spec:
        serviceAccountName: loki
        securityContext:
          fsGroup: 11211
          runAsGroup: 11211
          runAsNonRoot: true
          runAsUser: 11211
        initContainers:
          []
        nodeSelector:
          {}
        affinity:
          {}
        topologySpreadConstraints:
          []
        tolerations:
          []
        terminationGracePeriodSeconds: 60
        containers:
          - name: memcached
-           image: memcached:1.6.37-alpine
+           image: memcached:1.6.38-alpine
            imagePullPolicy: IfNotPresent
            resources:
              limits:
                memory: 1229Mi
              requests:
                cpu: 500m
                memory: 1229Mi
            ports:
              - containerPort: 11211
                name: client
            args:
              - -m 1024
              - --extended=modern,track_sizes
              - -I 5m
              - -c 16384
              - -v
              - -u 11211
            env:
            envFrom:
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true
          - name: exporter
            image: prom/memcached-exporter:v0.15.1
            imagePullPolicy: IfNotPresent
            ports:
              - containerPort: 9150
                name: http-metrics
            args:
              - "--memcached.address=localhost:11211"
              - "--web.listen-address=0.0.0.0:9150"
            resources:
              limits: {}
              requests: {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              readOnlyRootFilesystem: true

@renovate renovate bot force-pushed the deps-update/main-memcached branch 14 times, most recently from 5d2fd83 to 899b08e Compare March 24, 2025 17:14
@github-actions github-actions bot added the type/docs Issues related to technical documentation; the Docs Squad uses this label across many repositories label Mar 24, 2025
Copy link
Contributor

github-actions bot commented Mar 24, 2025

💻 Deploy preview deleted.

@renovate renovate bot force-pushed the deps-update/main-memcached branch from 8ef6d62 to e39ba0b Compare March 24, 2025 17:45
@renovate renovate bot force-pushed the deps-update/main-memcached branch from e39ba0b to 9b49ebc Compare March 24, 2025 17:57
@renovate renovate bot merged commit a40e5a0 into main Mar 24, 2025
72 checks passed
@renovate renovate bot deleted the deps-update/main-memcached branch March 24, 2025 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/helm dependencies Pull requests that update a dependency file size/XS type/docs Issues related to technical documentation; the Docs Squad uses this label across many repositories
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant