Skip to content

Add support for escaping chars in APLogConf CRD #2601

@Binsabbar

Description

@Binsabbar

I am setting up my logs as json and I would like to escape certain charts. It is possible as explained here https://docs.nginx.com/nginx-app-protect/configuration-guide/configuration/#log-with-escaped-character-and-custom-list-prefix--delimiter--suffix

However, looking at https://github.com/nginxinc/kubernetes-ingress/blob/main/deployments/helm-chart/crds/appprotect.f5.com_aplogconfs.yaml, it is clearly not supported :(

Adding support for the following keys under content

apiVersion: appprotect.f5.com/v1beta1
kind: APLogConf
metadata:
  name: ap-logs-conf-json
  namespace: nginx-ingress
spec:
  filter:
    request_type: illegal
  content:
    format: user-defined
    format_string: "my json format goes here"
    max_request_size: any
    max_message_size: 5k
    escaping_characters:
      - from: '"'
        to: '\"'
    list_prefix: "["
    list_delimiter: ","
    list_suffix: "]"

As a workaround I am using Promtail pipelines-stages (regex, and template stages) to format the logs and do the escaping myself, which is annoying to be honest.

Metadata

Metadata

Assignees

No one assigned

    Labels

    proposalAn issue that proposes a feature request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions