Accessing the controller event metrics

Ziti has a LOT of data that you can tap into, this example is perhaps a bit overkill, but it should demonstrate how to pick and choose certain namespaces if you want to create filters or drop certain data types to specific files. This would need to go into your controller config.

metrics:
  reportInterval: 1m

events:

  jsonLogger:
    subscriptions:
     - type: metrics
       metricFilter: "link.latency.*"
     - type: metrics
       sourceFilter: .*
       metricFilter: "(.*session.create.*)|(bolt.*)"
     - type: metrics
       sourceFilter: .*
       metricFilter: "/edge*"
     - type: metrics
       metricFilter: "ctrl.*"
    handler:
      type: file
      format: json
      path: /var/log/ziti/metrics.log
      maxsizemb: 1024
      maxbackups: 1

  edgeSessionLogger:
    subscriptions:
     - type: edge.sessions
       include:
        - created
    handler:
      type: file
      format: json
      path: /var/log/ziti/edgesessions.log
      maxsizemb: 1024
      maxbackups: 1

If you want everything for a given type, just add:

  jsonLogger:
    subscriptions:
     - type: metrics
    handler:
      type: file
      format: json
      path: /var/log/ziti/metrics.log
      maxsizemb: 1024
      maxbackups: 1

1 Like