2
0

configmap.yaml 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. apiVersion: v1
  2. kind: ConfigMap
  3. metadata:
  4. name: {{ template "promtail.fullname" . }}
  5. namespace: {{ .Release.Namespace }}
  6. labels:
  7. app: {{ template "promtail.name" . }}
  8. chart: {{ template "promtail.chart" . }}
  9. release: {{ .Release.Name }}
  10. heritage: {{ .Release.Service }}
  11. data:
  12. promtail.yaml: |
  13. {{- toYaml .Values.config | nindent 4 }}
  14. scrape_configs:
  15. {{- if .Values.scrapeConfigs }}
  16. {{- toYaml .Values.scrapeConfigs | nindent 4 }}
  17. {{- else }}
  18. - job_name: kubernetes-pods-name
  19. pipeline_stages:
  20. {{- toYaml .Values.pipelineStages | nindent 8 }}
  21. kubernetes_sd_configs:
  22. - role: pod
  23. relabel_configs:
  24. - source_labels:
  25. - __meta_kubernetes_pod_label_name
  26. target_label: __service__
  27. - source_labels:
  28. - __meta_kubernetes_pod_node_name
  29. target_label: __host__
  30. - action: drop
  31. regex: ''
  32. source_labels:
  33. - __service__
  34. - action: labelmap
  35. regex: __meta_kubernetes_pod_label_(.+)
  36. - action: replace
  37. replacement: $1
  38. separator: /
  39. source_labels:
  40. - __meta_kubernetes_namespace
  41. - __service__
  42. target_label: job
  43. - action: replace
  44. source_labels:
  45. - __meta_kubernetes_namespace
  46. target_label: namespace
  47. - action: replace
  48. source_labels:
  49. - __meta_kubernetes_pod_name
  50. target_label: pod
  51. - action: replace
  52. source_labels:
  53. - __meta_kubernetes_pod_container_name
  54. target_label: container
  55. - replacement: /var/log/pods/*$1/*.log
  56. separator: /
  57. source_labels:
  58. - __meta_kubernetes_pod_uid
  59. - __meta_kubernetes_pod_container_name
  60. target_label: __path__
  61. - job_name: kubernetes-pods-app
  62. pipeline_stages:
  63. {{- toYaml .Values.pipelineStages | nindent 8 }}
  64. kubernetes_sd_configs:
  65. - role: pod
  66. relabel_configs:
  67. - action: drop
  68. regex: .+
  69. source_labels:
  70. - __meta_kubernetes_pod_label_name
  71. - source_labels:
  72. - __meta_kubernetes_pod_label_app
  73. target_label: __service__
  74. - source_labels:
  75. - __meta_kubernetes_pod_node_name
  76. target_label: __host__
  77. - action: drop
  78. regex: ''
  79. source_labels:
  80. - __service__
  81. - action: labelmap
  82. regex: __meta_kubernetes_pod_label_(.+)
  83. - action: replace
  84. replacement: $1
  85. separator: /
  86. source_labels:
  87. - __meta_kubernetes_namespace
  88. - __service__
  89. target_label: job
  90. - action: replace
  91. source_labels:
  92. - __meta_kubernetes_namespace
  93. target_label: namespace
  94. - action: replace
  95. source_labels:
  96. - __meta_kubernetes_pod_name
  97. target_label: pod
  98. - action: replace
  99. source_labels:
  100. - __meta_kubernetes_pod_container_name
  101. target_label: container
  102. - replacement: /var/log/pods/*$1/*.log
  103. separator: /
  104. source_labels:
  105. - __meta_kubernetes_pod_uid
  106. - __meta_kubernetes_pod_container_name
  107. target_label: __path__
  108. - job_name: kubernetes-pods-direct-controllers
  109. pipeline_stages:
  110. {{- toYaml .Values.pipelineStages | nindent 8 }}
  111. kubernetes_sd_configs:
  112. - role: pod
  113. relabel_configs:
  114. - action: drop
  115. regex: .+
  116. separator: ''
  117. source_labels:
  118. - __meta_kubernetes_pod_label_name
  119. - __meta_kubernetes_pod_label_app
  120. - action: drop
  121. regex: '[0-9a-z-.]+-[0-9a-f]{8,10}'
  122. source_labels:
  123. - __meta_kubernetes_pod_controller_name
  124. - source_labels:
  125. - __meta_kubernetes_pod_controller_name
  126. target_label: __service__
  127. - source_labels:
  128. - __meta_kubernetes_pod_node_name
  129. target_label: __host__
  130. - action: drop
  131. regex: ''
  132. source_labels:
  133. - __service__
  134. - action: labelmap
  135. regex: __meta_kubernetes_pod_label_(.+)
  136. - action: replace
  137. replacement: $1
  138. separator: /
  139. source_labels:
  140. - __meta_kubernetes_namespace
  141. - __service__
  142. target_label: job
  143. - action: replace
  144. source_labels:
  145. - __meta_kubernetes_namespace
  146. target_label: namespace
  147. - action: replace
  148. source_labels:
  149. - __meta_kubernetes_pod_name
  150. target_label: pod
  151. - action: replace
  152. source_labels:
  153. - __meta_kubernetes_pod_container_name
  154. target_label: container
  155. - replacement: /var/log/pods/*$1/*.log
  156. separator: /
  157. source_labels:
  158. - __meta_kubernetes_pod_uid
  159. - __meta_kubernetes_pod_container_name
  160. target_label: __path__
  161. - job_name: kubernetes-pods-indirect-controller
  162. pipeline_stages:
  163. {{- toYaml .Values.pipelineStages | nindent 8 }}
  164. kubernetes_sd_configs:
  165. - role: pod
  166. relabel_configs:
  167. - action: drop
  168. regex: .+
  169. separator: ''
  170. source_labels:
  171. - __meta_kubernetes_pod_label_name
  172. - __meta_kubernetes_pod_label_app
  173. - action: keep
  174. regex: '[0-9a-z-.]+-[0-9a-f]{8,10}'
  175. source_labels:
  176. - __meta_kubernetes_pod_controller_name
  177. - action: replace
  178. regex: '([0-9a-z-.]+)-[0-9a-f]{8,10}'
  179. source_labels:
  180. - __meta_kubernetes_pod_controller_name
  181. target_label: __service__
  182. - source_labels:
  183. - __meta_kubernetes_pod_node_name
  184. target_label: __host__
  185. - action: drop
  186. regex: ''
  187. source_labels:
  188. - __service__
  189. - action: labelmap
  190. regex: __meta_kubernetes_pod_label_(.+)
  191. - action: replace
  192. replacement: $1
  193. separator: /
  194. source_labels:
  195. - __meta_kubernetes_namespace
  196. - __service__
  197. target_label: job
  198. - action: replace
  199. source_labels:
  200. - __meta_kubernetes_namespace
  201. target_label: namespace
  202. - action: replace
  203. source_labels:
  204. - __meta_kubernetes_pod_name
  205. target_label: pod
  206. - action: replace
  207. source_labels:
  208. - __meta_kubernetes_pod_container_name
  209. target_label: container
  210. - replacement: /var/log/pods/*$1/*.log
  211. separator: /
  212. source_labels:
  213. - __meta_kubernetes_pod_uid
  214. - __meta_kubernetes_pod_container_name
  215. target_label: __path__
  216. - job_name: kubernetes-pods-static
  217. pipeline_stages:
  218. {{- toYaml .Values.pipelineStages | nindent 8 }}
  219. kubernetes_sd_configs:
  220. - role: pod
  221. relabel_configs:
  222. - action: drop
  223. regex: ''
  224. source_labels:
  225. - __meta_kubernetes_pod_annotation_kubernetes_io_config_mirror
  226. - action: replace
  227. source_labels:
  228. - __meta_kubernetes_pod_label_component
  229. target_label: __service__
  230. - source_labels:
  231. - __meta_kubernetes_pod_node_name
  232. target_label: __host__
  233. - action: drop
  234. regex: ''
  235. source_labels:
  236. - __service__
  237. - action: labelmap
  238. regex: __meta_kubernetes_pod_label_(.+)
  239. - action: replace
  240. replacement: $1
  241. separator: /
  242. source_labels:
  243. - __meta_kubernetes_namespace
  244. - __service__
  245. target_label: job
  246. - action: replace
  247. source_labels:
  248. - __meta_kubernetes_namespace
  249. target_label: namespace
  250. - action: replace
  251. source_labels:
  252. - __meta_kubernetes_pod_name
  253. target_label: pod
  254. - action: replace
  255. source_labels:
  256. - __meta_kubernetes_pod_container_name
  257. target_label: container
  258. - replacement: /var/log/pods/*$1/*.log
  259. separator: /
  260. source_labels:
  261. - __meta_kubernetes_pod_annotation_kubernetes_io_config_mirror
  262. - __meta_kubernetes_pod_container_name
  263. target_label: __path__
  264. {{- end }}
  265. {{- if .Values.extraScrapeConfigs }}
  266. {{- toYaml .Values.extraScrapeConfigs | nindent 4 }}
  267. {{- end }}