add alloy
This commit is contained in:
		
							
								
								
									
										9
									
								
								alloy/Chart.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								alloy/Chart.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
			
		||||
---
 | 
			
		||||
apiVersion: v2
 | 
			
		||||
name: alloy
 | 
			
		||||
version: "1.0.0"
 | 
			
		||||
 | 
			
		||||
dependencies:
 | 
			
		||||
  - name: alloy
 | 
			
		||||
    version: 1.1.2
 | 
			
		||||
    repository: https://grafana.github.io/helm-charts
 | 
			
		||||
							
								
								
									
										97
									
								
								alloy/values-development.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										97
									
								
								alloy/values-development.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,97 @@
 | 
			
		||||
alloy:
 | 
			
		||||
  alloy:
 | 
			
		||||
    configMap:
 | 
			
		||||
      content: |-
 | 
			
		||||
        loki.write "default" {
 | 
			
		||||
          endpoint {
 | 
			
		||||
            url = "http://loki.loki.svc.cluster.local:3100/loki/api/v1/push"
 | 
			
		||||
            tenant_id = "luna"
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // discovery.kubernetes allows you to find scrape targets from Kubernetes resources.
 | 
			
		||||
        // It watches cluster state and ensures targets are continually synced with what is currently running in your cluster.
 | 
			
		||||
        discovery.kubernetes "pod" {
 | 
			
		||||
          role = "pod"
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // discovery.relabel rewrites the label set of the input targets by applying one or more relabeling rules.
 | 
			
		||||
        // If no rules are defined, then the input targets are exported as-is.
 | 
			
		||||
        discovery.relabel "pod_logs" {
 | 
			
		||||
          targets = discovery.kubernetes.pod.targets
 | 
			
		||||
 | 
			
		||||
          // Label creation - "namespace" field from "__meta_kubernetes_namespace"
 | 
			
		||||
          rule {
 | 
			
		||||
            source_labels = ["__meta_kubernetes_namespace"]
 | 
			
		||||
            action = "replace"
 | 
			
		||||
            target_label = "namespace"
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          // Label creation - "pod" field from "__meta_kubernetes_pod_name"
 | 
			
		||||
          rule {
 | 
			
		||||
            source_labels = ["__meta_kubernetes_pod_name"]
 | 
			
		||||
            action = "replace"
 | 
			
		||||
            target_label = "pod"
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          // Label creation - "container" field from "__meta_kubernetes_pod_container_name"
 | 
			
		||||
          rule {
 | 
			
		||||
            source_labels = ["__meta_kubernetes_pod_container_name"]
 | 
			
		||||
            action = "replace"
 | 
			
		||||
            target_label = "container"
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          // Label creation -  "app" field from "__meta_kubernetes_pod_label_app_kubernetes_io_name"
 | 
			
		||||
          rule {
 | 
			
		||||
            source_labels = ["__meta_kubernetes_pod_label_app_kubernetes_io_name"]
 | 
			
		||||
            action = "replace"
 | 
			
		||||
            target_label = "app"
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          // Label creation -  "job" field from "__meta_kubernetes_namespace" and "__meta_kubernetes_pod_container_name"
 | 
			
		||||
          // Concatenate values __meta_kubernetes_namespace/__meta_kubernetes_pod_container_name
 | 
			
		||||
          rule {
 | 
			
		||||
            source_labels = ["__meta_kubernetes_namespace", "__meta_kubernetes_pod_container_name"]
 | 
			
		||||
            action = "replace"
 | 
			
		||||
            target_label = "job"
 | 
			
		||||
            separator = "/"
 | 
			
		||||
            replacement = "$1"
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          // Label creation - "container" field from "__meta_kubernetes_pod_uid" and "__meta_kubernetes_pod_container_name"
 | 
			
		||||
          // Concatenate values __meta_kubernetes_pod_uid/__meta_kubernetes_pod_container_name.log
 | 
			
		||||
          rule {
 | 
			
		||||
            source_labels = ["__meta_kubernetes_pod_uid", "__meta_kubernetes_pod_container_name"]
 | 
			
		||||
            action = "replace"
 | 
			
		||||
            target_label = "__path__"
 | 
			
		||||
            separator = "/"
 | 
			
		||||
            replacement = "/var/log/pods/*$1/*.log"
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          // Label creation -  "container_runtime" field from "__meta_kubernetes_pod_container_id"
 | 
			
		||||
          rule {
 | 
			
		||||
            source_labels = ["__meta_kubernetes_pod_container_id"]
 | 
			
		||||
            action = "replace"
 | 
			
		||||
            target_label = "container_runtime"
 | 
			
		||||
            regex = "^(\\S+):\\/\\/.+$"
 | 
			
		||||
            replacement = "$1"
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // loki.source.kubernetes tails logs from Kubernetes containers using the Kubernetes API.
 | 
			
		||||
        loki.source.kubernetes "pod_logs" {
 | 
			
		||||
          targets    = discovery.relabel.pod_logs.output
 | 
			
		||||
          forward_to = [loki.process.pod_logs.receiver]
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // loki.process receives log entries from other Loki components, applies one or more processing stages,
 | 
			
		||||
        // and forwards the results to the list of receivers in the component's arguments.
 | 
			
		||||
        loki.process "pod_logs" {
 | 
			
		||||
          stage.static_labels {
 | 
			
		||||
              values = {
 | 
			
		||||
                cluster = "development",
 | 
			
		||||
              }
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          forward_to = [loki.write.default.receiver]
 | 
			
		||||
        }
 | 
			
		||||
		Reference in New Issue
	
	Block a user