diff --git a/swh/templates/listers/configmap.yaml b/swh/templates/listers/configmap.yaml index ef1cc8ebf7021573a2ba4df77a1c47442dec909d..d85aab9e527a9edd5ab6a88dce8c3d2887eb8b59 100644 --- a/swh/templates/listers/configmap.yaml +++ b/swh/templates/listers/configmap.yaml @@ -30,6 +30,9 @@ data: {{ range $lister_type, $deployment_config := .Values.listers.deployments }} {{ $lister_name := ( print "lister-" $lister_type ) }} +# Set useJsonLogger to false to let the logs be plain text +{{- $use_json_logger := get $deployment_config "useJsonLogger" | default true }} +{{ $log_level := get $deployment_config "logLevel" | default "INFO" | quote }} --- apiVersion: v1 kind: ConfigMap @@ -91,5 +94,40 @@ data: fi exit 0 +{{ if $use_json_logger -}} + logging-configuration.yml: | + version: 1 + + handlers: + console: + class: logging.StreamHandler + formatter: json + stream: ext://sys.stdout + + formatters: + json: + class: pythonjsonlogger.jsonlogger.JsonFormatter + # python-json-logger parses the format argument to get the variables it actually expands into the json + format: "%(asctime)s:%(threadName)s:%(pathname)s:%(lineno)s:%(funcName)s:%(task_name)s:%(task_id)s:%(name)s:%(levelname)s:%(message)s" + + loggers: + celery: + level: {{ $log_level }} + amqp: + level: WARNING + urllib3: + level: WARNING + azure.core.pipeline.policies.http_logging_policy: + level: WARNING + swh: + level: {{ $log_level }} + celery.task: + level: {{ $log_level }} + + root: + level: {{ $log_level }} + handlers: + - console +{{ end }} {{ end }} {{- end -}} diff --git a/swh/templates/listers/deployment.yaml b/swh/templates/listers/deployment.yaml index 23bc6cbd84864ad2d1dd1103c62251cc5a095295..d601c5f5728a806bda79109d194bcdfa0c0e473c 100644 --- a/swh/templates/listers/deployment.yaml +++ b/swh/templates/listers/deployment.yaml @@ -2,6 +2,8 @@ {{- $configurationChecksum := include (print $.Template.BasePath "/listers/configmap.yaml") . -}} {{- range $lister_type, $deployment_config := .Values.listers.deployments -}} {{- $lister_name := ( print "lister-" $lister_type ) -}} +# Set useJsonLogger to false to let the logs be plain text +{{- $use_json_logger := get $deployment_config "useJsonLogger" | default true }} --- apiVersion: apps/v1 kind: Deployment @@ -95,6 +97,10 @@ spec: value: {{ get $deployment_config "logLevel" | default "INFO" | quote }} - name: SWH_CONFIG_FILENAME value: /etc/swh/config.yml + {{ if $use_json_logger -}} + - name: SWH_LOG_CONFIG + value: /etc/swh/logging-configuration.yml + {{ end }} - name: SWH_SENTRY_ENVIRONMENT value: {{ $.Values.sentry.environment }} volumeMounts: