35dd771f63
Deploy cloudhost-logging on cluster registration, ship app and optional service logs to ES with owner isolation, and fix Kibana 8.12 auth via kibana_system. Co-authored-by: Cursor <cursoragent@cursor.com>
152 lines
4.5 KiB
YAML
152 lines
4.5 KiB
YAML
{{- if .Values.elasticsearch.enabled }}
|
|
{{- $name := include "cloudhost-app.name" . -}}
|
|
{{- $ns := include "cloudhost-app.namespace" . -}}
|
|
{{- if .Values.redis.enabled }}
|
|
{{- $redisName := printf "%s-redis" $name -}}
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: {{ $redisName }}-log-shipper-config
|
|
namespace: {{ $ns }}
|
|
data:
|
|
fluent-bit.conf: |
|
|
[SERVICE]
|
|
Flush 5
|
|
Daemon Off
|
|
Log_Level info
|
|
Parsers_File /fluent-bit/etc/parsers.conf
|
|
[INPUT]
|
|
Name tail
|
|
Path /var/log/pods/*{{ $redisName }}*/*/*.log
|
|
Tag redis.{{ $redisName }}
|
|
Refresh_Interval 5
|
|
Parser docker
|
|
[FILTER]
|
|
Name record_modifier
|
|
Match *
|
|
Record app {{ $name }}
|
|
Record applicationName {{ $name }}
|
|
Record namespace {{ $ns }}
|
|
Record ownerId {{ .Values.elasticsearch.ownerId }}
|
|
Record applicationId {{ .Values.elasticsearch.applicationId }}
|
|
Record workload redis
|
|
[OUTPUT]
|
|
Name es
|
|
Match *
|
|
Host ${ES_HOST}
|
|
Port ${ES_PORT}
|
|
HTTP_User elastic
|
|
HTTP_Passwd ${ES_PASSWORD}
|
|
Index logs-{{ $ns }}-{{ $name }}
|
|
Logstash_Format On
|
|
Logstash_Prefix logs-{{ $ns }}
|
|
Suppress_Type_Name On
|
|
tls Off
|
|
parsers.conf: |
|
|
[PARSER]
|
|
Name docker
|
|
Format json
|
|
Time_Key time
|
|
Time_Format %Y-%m-%dT%H:%M:%S.%L
|
|
{{- end }}
|
|
{{- if .Values.rabbitmq.enabled }}
|
|
{{- $rabbitName := printf "%s-rabbitmq" $name -}}
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: {{ $rabbitName }}-log-shipper-config
|
|
namespace: {{ $ns }}
|
|
data:
|
|
fluent-bit.conf: |
|
|
[SERVICE]
|
|
Flush 5
|
|
Daemon Off
|
|
Log_Level info
|
|
Parsers_File /fluent-bit/etc/parsers.conf
|
|
[INPUT]
|
|
Name tail
|
|
Path /var/log/pods/*{{ $rabbitName }}*/*/*.log
|
|
Tag rabbitmq.{{ $rabbitName }}
|
|
Refresh_Interval 5
|
|
Parser docker
|
|
[FILTER]
|
|
Name record_modifier
|
|
Match *
|
|
Record app {{ $name }}
|
|
Record applicationName {{ $name }}
|
|
Record namespace {{ $ns }}
|
|
Record ownerId {{ .Values.elasticsearch.ownerId }}
|
|
Record applicationId {{ .Values.elasticsearch.applicationId }}
|
|
Record workload rabbitmq
|
|
[OUTPUT]
|
|
Name es
|
|
Match *
|
|
Host ${ES_HOST}
|
|
Port ${ES_PORT}
|
|
HTTP_User elastic
|
|
HTTP_Passwd ${ES_PASSWORD}
|
|
Index logs-{{ $ns }}-{{ $name }}
|
|
Logstash_Format On
|
|
Logstash_Prefix logs-{{ $ns }}
|
|
Suppress_Type_Name On
|
|
tls Off
|
|
parsers.conf: |
|
|
[PARSER]
|
|
Name docker
|
|
Format json
|
|
Time_Key time
|
|
Time_Format %Y-%m-%dT%H:%M:%S.%L
|
|
{{- end }}
|
|
{{- if .Values.database.enabled }}
|
|
{{- $dbName := include "cloudhost-app.dbDeploymentName" . -}}
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: {{ $dbName }}-log-shipper-config
|
|
namespace: {{ $ns }}
|
|
data:
|
|
fluent-bit.conf: |
|
|
[SERVICE]
|
|
Flush 5
|
|
Daemon Off
|
|
Log_Level info
|
|
Parsers_File /fluent-bit/etc/parsers.conf
|
|
[INPUT]
|
|
Name tail
|
|
Path /var/log/pods/*{{ $dbName }}*/*/*.log
|
|
Tag database.{{ $dbName }}
|
|
Refresh_Interval 5
|
|
Parser docker
|
|
[FILTER]
|
|
Name record_modifier
|
|
Match *
|
|
Record app {{ $name }}
|
|
Record applicationName {{ $name }}
|
|
Record namespace {{ $ns }}
|
|
Record ownerId {{ .Values.elasticsearch.ownerId }}
|
|
Record applicationId {{ .Values.elasticsearch.applicationId }}
|
|
Record workload database
|
|
[OUTPUT]
|
|
Name es
|
|
Match *
|
|
Host ${ES_HOST}
|
|
Port ${ES_PORT}
|
|
HTTP_User elastic
|
|
HTTP_Passwd ${ES_PASSWORD}
|
|
Index logs-{{ $ns }}-{{ $name }}
|
|
Logstash_Format On
|
|
Logstash_Prefix logs-{{ $ns }}
|
|
Suppress_Type_Name On
|
|
tls Off
|
|
parsers.conf: |
|
|
[PARSER]
|
|
Name docker
|
|
Format json
|
|
Time_Key time
|
|
Time_Format %Y-%m-%dT%H:%M:%S.%L
|
|
{{- end }}
|
|
{{- end }}
|