# Test the default config with no changes.
yaml
----
sinks:
  file-groups:
    default:
      channels: {INFO: all}
      dir: TMPDIR
      max-file-size: 10MiB
      max-group-size: 100MiB
      buffered-writes: true
      format: crdb-v2
      redact: false
      redactable: true
      exit-on-error: true
  stderr:
    format: crdb-v2-tty
    redact: false
    redactable: true
    exit-on-error: true
capture-stray-errors:
  enable: true
  dir: TMPDIR
  max-group-size: 100MiB

# Test the default config with heterogeneous filters on stderr.
yaml
sinks:
  stderr: {channels: {WARNING: all except DEV, INFO: DEV}}
----
sinks:
  file-groups:
    default:
      channels: {INFO: all}
      dir: TMPDIR
      max-file-size: 10MiB
      max-group-size: 100MiB
      buffered-writes: true
      format: crdb-v2
      redact: false
      redactable: true
      exit-on-error: true
  stderr:
    channels: {INFO: [DEV], WARNING: [OPS, HEALTH, STORAGE, SESSIONS, SQL_SCHEMA, USER_ADMIN, PRIVILEGES, SENSITIVE_ACCESS, SQL_EXEC, SQL_PERF, SQL_INTERNAL_PERF, TELEMETRY, KV_DISTRIBUTION]}
    format: crdb-v2-tty
    redact: false
    redactable: true
    exit-on-error: true
capture-stray-errors:
  enable: true
  dir: TMPDIR
  max-group-size: 100MiB

# Test the default config with a fluent server.
yaml
sinks:
 fluent-servers: {local: {channels: SESSIONS, address: localhost:5170}}
----
sinks:
  file-groups:
    default:
      channels: {INFO: all}
      dir: TMPDIR
      max-file-size: 10MiB
      max-group-size: 100MiB
      buffered-writes: true
      format: crdb-v2
      redact: false
      redactable: true
      exit-on-error: true
  fluent-servers:
    s1:
      channels: {INFO: [SESSIONS]}
      net: tcp
      address: localhost:5170
      format: json-fluent-compact
      redact: false
      redactable: true
      exit-on-error: false
      buffering:
        max-staleness: 5s
        flush-trigger-size: 1.0MiB
        max-buffer-size: 50MiB
        format: newline
  stderr:
    format: crdb-v2-tty
    redact: false
    redactable: true
    exit-on-error: true
capture-stray-errors:
  enable: true
  dir: TMPDIR
  max-group-size: 100MiB

# Test the default config with an http server.
yaml
sinks:
 http-servers: {local: {channels: SESSIONS, address: localhost:5170}}
----
sinks:
  file-groups:
    default:
      channels: {INFO: all}
      dir: TMPDIR
      max-file-size: 10MiB
      max-group-size: 100MiB
      buffered-writes: true
      format: crdb-v2
      redact: false
      redactable: true
      exit-on-error: true
  http-servers:
    s1:
      channels: {INFO: [SESSIONS]}
      address: localhost:5170
      method: POST
      unsafe-tls: false
      timeout: 2s
      disable-keep-alives: false
      compression: gzip
      filter: INFO
      format: json-compact
      redact: false
      redactable: true
      exit-on-error: false
      auditable: false
      buffering:
        max-staleness: 5s
        flush-trigger-size: 1.0MiB
        max-buffer-size: 50MiB
        format: newline
  stderr:
    format: crdb-v2-tty
    redact: false
    redactable: true
    exit-on-error: true
capture-stray-errors:
  enable: true
  dir: TMPDIR
  max-group-size: 100MiB


# Test the default config with a catch-all auditable file.
yaml
sinks:
 file-groups: {all: {auditable: true, channels: ALL}}
----
sinks:
  file-groups:
    all:
      channels: {INFO: all}
      dir: TMPDIR
      max-file-size: 10MiB
      max-group-size: 100MiB
      buffered-writes: false
      format: crdb-v2
      redact: false
      redactable: true
      exit-on-error: true
  stderr:
    format: crdb-v2-tty
    redact: false
    redactable: true
    exit-on-error: true
capture-stray-errors:
  enable: true
  dir: TMPDIR
  max-group-size: 100MiB
