Events
The ziti controller can emit kinds of events, useful for monitoring, management and integration with other systems. They can be enabled in the controller configuration.
Event Types
- ApiSessionEvent
- CircuitEvent
- ClusterEvent
- ConnectEvent
- EntityChangeEvent
- EntityCountEvent
- LinkEvent
- MetricsEvent
- RouterEvent
- SdkEvent
- ServiceEvent
- SessionEvent
- TerminatorEvent
- UsageEvent
ApiSessionEvent
An ApiSessionEvent is emitted whenever an api session is created, deleted, refreshed or exchanged. Legacy sessions are only ever created or deleted. JWT sessions are created, refreshed and exchanged.
Example:
{
"namespace": "edge.apiSessions",
"event_type": "created",
"id": "ckvr2r4fs0001oigd6si4akc8",
"timestamp": "2021-11-08T14:45:45.785561479-05:00",
"token": "77cffde5-f68e-4ef0-bbb5-731db36145f5",
"identity_id": "76BB.shC0",
"ip_address": "127.0.0.1"
}
Namespace
The namespace for ApiSessionEvents is edge.apiSessions
Fields
namespace
namespace is the event group. The namespace for ApiSessionEvents is edge.apiSessions
- Type: string
event_type
event_type indicates the type api session event. One of ["created", "deleted", "refreshed", "exchanged"]
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
id
id is the api session id
- Type: string
type
type is the api session type, one of ["legacy", "jwt"]
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
token
token is the api session token
- Type: string
identity_id
identity_id is the id of the identity that the api session belongs to
- Type: string
ip_address
ip_address is the IP address from which the identity to connected to require the api session
- Type: string
CircuitEvent
Namespace
The namespace for CircuitEvents is fabric.circuits
Fields
namespace
namespace is the event group. The namespace for CircuitEvents is fabric.circuits
- Type: string
version
- Type: number (uint32)
event_type
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
circuit_id
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
client_id
- Type: string
service_id
- Type: string
terminator_id
- Type: string
instance_id
- Type: string
creation_timespan
- Type: string containing a duration. Examples: "1s", "5m", "3h"
path
- Type: CircuitPath
link_count
- Type: number (int)
path_cost
- Type: number (uint32)
failure_cause
- Type: string
duration
- Type: string containing a duration. Examples: "1s", "5m", "3h"
tags
- Type: map of string -> string
CircuitPath
Fields
nodes
- Type: list of string
links
- Type: list of string
ingress_id
- Type: string
egress_id
- Type: string
initiator_local_addr
- Type: string
initiator_remote_addr
- Type: string
terminator_local_addr
- Type: string
terminator_remote_addr
- Type: string
ClusterEvent
Namespace
The namespace for ClusterEvents is cluster
Fields
namespace
namespace is the event group. The namespace for ClusterEvents is cluster
- Type: string
eventType
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
index
- Type: number (uint64)
peers
- Type: list of ClusterPeer
leaderId
- Type: string
ApiAddress
Fields
url
- Type: string
version
- Type: string
ClusterPeer
Fields
id
- Type: string
addr
- Type: string
version
- Type: string
apiAddresses
- Type: map of string -> list of ApiAddress
ConnectEvent
Namespace
The namespace for ConnectEvents is connect
Fields
namespace
namespace is the event group. The namespace for ConnectEvents is connect
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
src_type
- Type: string
dst_type
- Type: string
src_id
- Type: string
src_addr
- Type: string
dst_id
- Type: string
dst_addr
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
EntityChangeEvent
Namespace
The namespace for EntityChangeEvents is entityChange
Fields
namespace
namespace is the event group. The namespace for EntityChangeEvents is entityChange
- Type: string
eventId
- Type: string
eventType
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
metadata
- Type: map of string -> object
entityType
- Type: string
isParentEvent
- Type: boolean
initialState
- Type: object
finalState
- Type: object
EntityCountEvent
Namespace
The namespace for EntityCountEvents is edge.entityCounts
Fields
namespace
namespace is the event group. The namespace for EntityCountEvents is edge.entityCounts
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
counts
- Type: map of string -> number (int64)
error
- Type: string
LinkEvent
Namespace
The namespace for LinkEvents is fabric.links
Fields
namespace
namespace is the event group. The namespace for LinkEvents is fabric.links
- Type: string
event_type
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
link_id
- Type: string
src_router_id
- Type: string
dst_router_id
- Type: string
protocol
- Type: string
dial_address
- Type: string
cost
- Type: number (int32)
connections
- Type: list of LinkConnection
LinkConnection
Fields
id
- Type: string
local_addr
- Type: string
remote_addr
- Type: string
MetricsEvent
Namespace
The namespace for MetricsEvents is metrics
Fields
metric_type
- Type: string
namespace
namespace is the event group. The namespace for MetricsEvents is metrics
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
source_id
- Type: string
source_entity_id
- Type: string
version
- Type: number (uint32)
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
metric
- Type: string
metrics
- Type: map of string -> object
tags
- Type: map of string -> string
source_event_id
- Type: string
RouterEvent
Namespace
The namespace for RouterEvents is fabric.routers
Fields
namespace
namespace is the event group. The namespace for RouterEvents is fabric.routers
- Type: string
event_type
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
router_id
- Type: string
router_online
- Type: boolean
SdkEvent
Namespace
The namespace for SdkEvents is sdk
Fields
namespace
namespace is the event group. The namespace for SdkEvents is sdk
- Type: string
event_type
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
identity_id
- Type: string
ServiceEvent
Namespace
The namespace for ServiceEvents is services
Fields
namespace
namespace is the event group. The namespace for ServiceEvents is services
- Type: string
version
- Type: number (uint32)
event_type
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
service_id
- Type: string
terminator_id
- Type: string
count
- Type: number (uint64)
interval_start_utc
- Type: number (int64)
interval_length
- Type: number (uint64)
SessionEvent
Namespace
The namespace for SessionEvents is edge.sessions
Fields
namespace
namespace is the event group. The namespace for SessionEvents is edge.sessions
- Type: string
event_type
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
session_type
- Type: string
id
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
token
- Type: string
api_session_id
- Type: string
identity_id
- Type: string
service_id
- Type: string
TerminatorEvent
Namespace
The namespace for TerminatorEvents is fabric.terminators
Fields
namespace
namespace is the event group. The namespace for TerminatorEvents is fabric.terminators
- Type: string
event_type
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
timestamp
timestamp is the datetime that the event was generated
- Type: string containing an RFC3339 formatted timestamp (example: "2024-10-02T12:17:39.501821249-04:00")
service_id
- Type: string
terminator_id
- Type: string
router_id
- Type: string
host_id
- Type: string
router_online
- Type: boolean
precedence
- Type: string
static_cost
- Type: number (uint16)
dynamic_cost
- Type: number (uint16)
total_terminators
- Type: number (int)
usable_default_terminators
- Type: number (int)
usable_required_terminators
- Type: number (int)
UsageEvent
Namespace
The namespace for UsageEvents is fabric.usage
Fields
namespace
namespace is the event group. The namespace for UsageEvents is fabric.usage
- Type: string
version
- Type: number (uint32)
event_type
- Type: string
event_src_id
event_src_id is the identifier of the controller which emitted the event
- Type: string
source_id
- Type: string
circuit_id
- Type: string
usage
- Type: number (uint64)
interval_start_utc
- Type: number (int64)
interval_length
- Type: number (uint64)
tags
- Type: map of string -> string