loki icon indicating copy to clipboard operation
loki copied to clipboard

No data appears to Azure Blob Storage for Grafana Loki

Open ajmal-yazdani opened this issue 10 months ago • 4 comments

loki-customvalues.txt

Describe the bug I want to configure Azure blob as storage for Grafana Loki, have tried many things, but nothings works for me

To Reproduce Steps to reproduce the behavior:

  1. I have deployed Grafana Loki version: 3.0.0 with Chart version: 6.3.2

helm install loki -n grafana grafana/loki --set write.replicas=1 --set read.replicas=1 --set backend.replicas=1 --set loki.auth_enabled=false --set loki.commonConfig.replication_factor=1 --values loki-customvalues.yaml

  1. Deployed Promtail version: 2.9.3
  2. All POD are running and

Expected behavior I should see chunks or logs or data to Azure Blob container, but nothing appears there. Is there any issue with my configuration?

Environment:

  • Infrastructure: Kubernetes
  • Deployment tool: helm

Screenshots, Promtail config, or terminal output

loki-customvalues.yaml: please find attached also with .txt extension

loki: schemaConfig: configs: - from: 2024-04-01 object_store: azure store: tsdb schema: v13 index: prefix: index_ period: 24h storage: azure:

  container_name: loki
bucketNames:
  admin: loki
  chunks: loki
  ruler: loki
type: azure
tsdb_shipper:
  active_index_directory: /loki/index
  cache_location: /loki/index_cache
  cache_ttl: 24h

filesystem: directory: /loki/chunks

ajmal-yazdani avatar Apr 22 '24 02:04 ajmal-yazdani

@ajmal-yazdani, there are a couple of Azure configuration examples in this PR that might help you get unstuck.

JStickler avatar Apr 22 '24 19:04 JStickler

Hi @JStickler Thanks for your response. I tried copy sample from here, https://github.com/grafana/loki/blob/b9431c06a37a8ee8120e0fe96e472c2bfb4b2589/docs/sources/configure/examples/configuration-examples.md#16-azure-account-name-exampleyaml and attached is my "values.yaml" file.

Unfortunately, it's throws error & complaining about something bucketNames.chunks null or something. Could you please help here?

**❯ helm install loki -n grafana grafana/loki --set write.replicas=1 --set read.replicas=1 --set backend.replicas=1 --set loki.auth_enabled=false --set loki.commonConfig.replication_factor=1 --values values.yaml

Error: INSTALLATION FAILED: template**: loki/templates/write/statefulset-write.yaml:46:28: executing "loki/templates/write/statefulset-write.yaml" at <include (print .Template.BasePath "/config.yaml") .>: error calling include: template: loki/templates/config.yaml:19:7: executing "loki/templates/config.yaml" at <include "loki.calculatedConfig" .>: error calling include: template: loki/templates/_helpers.tpl:461:24: executing "loki.calculatedConfig" at <tpl .Values.loki.config .>: error calling tpl: error during tpl function execution for "{{- if .Values.enterprise.enabled}}\n{{- tpl .Values.enterprise.config . }}\n{{- else }}\nauth_enabled: {{ .Values.loki.auth_enabled }}\n{{- end }}\n\n{{- with .Values.loki.server }}\nserver:\n {{- toYaml . | nindent 2}}\n{{- end}}\n\npattern_ingester:\n enabled: {{ .Values.loki.pattern_ingester.enabled }}\n\nmemberlist:\n{{- if .Values.loki.memberlistConfig }}\n {{- toYaml .Values.loki.memberlistConfig | nindent 2 }}\n{{- else }}\n{{- if .Values.loki.extraMemberlistConfig}}\n{{- toYaml .Values.loki.extraMemberlistConfig | nindent 2}}\n{{- end }}\n join_members:\n - {{ include "loki.memberlist" . }}\n {{- with .Values.migrate.fromDistributed }}\n {{- if .enabled }}\n - {{ .memberlistService }}\n {{- end }}\n {{- end }}\n{{- end }}\n\n{{- with .Values.loki.ingester }}\ningester:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- if .Values.loki.commonConfig}}\ncommon:\n{{- toYaml .Values.loki.commonConfig | nindent 2}}\n storage:\n {{- include "loki.commonStorageConfig" . | nindent 4}}\n{{- end}}\n\n{{- with .Values.loki.limits_config }}\nlimits_config:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\nruntime_config:\n file: /etc/loki/runtime-config/runtime-config.yaml\n\n{{- with .Values.chunksCache }}\n{{- if .enabled }}\nchunk_store_config:\n chunk_cache_config:\n default_validity: {{ .defaultValidity }}\n background:\n writeback_goroutines: {{ .writebackParallelism }}\n writeback_buffer: {{ .writebackBuffer }}\n writeback_size_limit: {{ .writebackSizeLimit }}\n memcached:\n batch_size: {{ .batchSize }}\n parallelism: {{ .parallelism }}\n memcached_client:\n addresses: dnssrvnoa+_memcached-client._tcp.{{ template "loki.fullname" $ }}-chunks-cache.{{ $.Release.Namespace }}.svc\n consistent_hash: true\n timeout: {{ .timeout }}\n max_idle_conns: 72\n{{- end }}\n{{- end }}\n\n{{- if .Values.loki.schemaConfig }}\nschema_config:\n{{- toYaml .Values.loki.schemaConfig | nindent 2}}\n{{- end }}\n\n{{- if .Values.loki.useTestSchema }}\nschema_config:\n{{- toYaml .Values.loki.testSchemaConfig | nindent 2}}\n{{- end }}\n\n{{ include "loki.rulerConfig" . }}\n\n{{- if or .Values.tableManager.retention_deletes_enabled .Values.tableManager.retention_period }}\ntable_manager:\n retention_deletes_enabled: {{ .Values.tableManager.retention_deletes_enabled }}\n retention_period: {{ .Values.tableManager.retention_period }}\n{{- end }}\n\nquery_range:\n align_queries_with_step: true\n {{- with .Values.loki.query_range }}\n {{- tpl (. | toYaml) $ | nindent 4 }}\n {{- end }}\n {{- if .Values.resultsCache.enabled }}\n {{- with .Values.resultsCache }}\n cache_results: true\n results_cache:\n cache:\n default_validity: {{ .defaultValidity }}\n background:\n writeback_goroutines: {{ .writebackParallelism }}\n writeback_buffer: {{ .writebackBuffer }}\n writeback_size_limit: {{ .writebackSizeLimit }}\n memcached_client:\n consistent_hash: true\n addresses: dnssrvnoa+_memcached-client._tcp.{{ template "loki.fullname" $ }}-results-cache.{{ $.Release.Namespace }}.svc\n timeout: {{ .timeout }}\n update_interval: 1m\n {{- end }}\n {{- end }}\n\n{{- with .Values.loki.storage_config }}\nstorage_config:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- with .Values.loki.query_scheduler }}\nquery_scheduler:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- with .Values.loki.compactor }}\ncompactor:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- with .Values.loki.analytics }}\nanalytics:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- with .Values.loki.querier }}\nquerier:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- with .Values.loki.index_gateway }}\nindex_gateway:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- with .Values.loki.frontend }}\nfrontend:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- with .Values.loki.frontend_worker }}\nfrontend_worker:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\n{{- with .Values.loki.distributor }}\ndistributor:\n {{- tpl (. | toYaml) $ | nindent 4 }}\n{{- end }}\n\ntracing:\n enabled: {{ .Values.loki.tracing.enabled }}\n": template: loki/templates/write/statefulset-write.yaml:40:6: executing "loki/templates/write/statefulset-write.yaml" at <include "loki.commonStorageConfig" .>: error calling include: template: loki/templates/_helpers.tpl:228:19: executing "loki.commonStorageConfig" at <$.Values.loki.storage.bucketNames.chunks>: nil pointer evaluating interface {}.chunks

values.txt

ajmal-yazdani avatar Apr 23 '24 02:04 ajmal-yazdani

@ajmal-yazdani Unfortunately I can't help much with debugging errors, I'm the technical writer and still learning about Loki myself. You could try asking over on the community forums.

JStickler avatar Apr 23 '24 16:04 JStickler

Is this after the maximum chunk age has passed? By default, it can take up to 2 hours before a chunk is flushed from memory to the store.

Also, please be aware that you have unredacted account keys in the config files you provided.

rgroothuijsen avatar Apr 26 '24 21:04 rgroothuijsen