Events
The controller can emit many kinds of events, useful for monitoring, management and integration with other systems. They can be enabled in the controller configuration.
Common Types
Type | Description | Examples |
---|---|---|
timestamp | RFC3339 formatted timestamp string | "2024-10-02T12:17:39.501821249-04:00" |
duration | Duration with value and unit | "10s", "5m", "3h" |
All events have the following fields
Type | Description | Type |
---|---|---|
namespace | The name indicating the overall event type | string |
timestamp | The date/time when the event was generated | timestamp |
evt_src_id | The id of the controller which emitted the event | string |
Event Types
- ApiSessionEvent
- CircuitEvent
- ClusterEvent
- ConnectEvent
- EntityChangeEvent
- EntityCountEvent
- LinkEvent
- MetricsEvent
- RouterEvent
- SdkEvent
- ServiceEvent
- SessionEvent
- TerminatorEvent
- UsageEvent
ApiSessionEvent
Namespace: edge.apiSessions
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"
}
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for ApiSessionEvents is edge.apiSessions | string |
event_type | The event_type indicates the type api session event. One of ["created", "deleted", "refreshed", "exchanged"] | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
id | The id is the api session id | string |
type | The type is the api session type, one of ["legacy", "jwt"] | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
token | The token is the api session token | string |
identity_id | The identity_id is the id of the identity that the api session belongs to | string |
ip_address | The ip_address is the IP address from which the identity to connected to require the api session | string |
CircuitEvent
Namespace: fabric.circuits
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for CircuitEvents is fabric.circuits | string |
version | The | number (uint32) |
event_type | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
circuit_id | The | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
client_id | The | string |
service_id | The | string |
terminator_id | The | string |
instance_id | The | string |
creation_timespan | The | duration |
path | The | CircuitPath |
link_count | The | number (int) |
path_cost | The | number (uint32) |
failure_cause | The | string |
duration | The | duration |
tags | The | map of string -> string |
CircuitPath
Fields
Field | Description | Type |
---|---|---|
nodes | The | list of string |
links | The | list of string |
ingress_id | The | string |
egress_id | The | string |
initiator_local_addr | The | string |
initiator_remote_addr | The | string |
terminator_local_addr | The | string |
terminator_remote_addr | The | string |
ClusterEvent
Namespace: cluster
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for ClusterEvents is cluster | string |
eventType | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
index | The | number (uint64) |
peers | The | list of ClusterPeer |
leaderId | The | string |
ApiAddress
Fields
Field | Description | Type |
---|---|---|
url | The | string |
version | The | string |
ClusterPeer
Fields
Field | Description | Type |
---|---|---|
id | The | string |
addr | The | string |
version | The | string |
apiAddresses | The | map of string -> list of ApiAddress |
ConnectEvent
Namespace: connect
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for ConnectEvents is connect | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
src_type | The | string |
dst_type | The | string |
src_id | The | string |
src_addr | The | string |
dst_id | The | string |
dst_addr | The | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
EntityChangeEvent
Namespace: entityChange
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for EntityChangeEvents is entityChange | string |
eventId | The | string |
eventType | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
metadata | The | map of string -> object |
entityType | The | string |
isParentEvent | The | boolean |
initialState | The | object |
finalState | The | object |
EntityCountEvent
Namespace: edge.entityCounts
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for EntityCountEvents is edge.entityCounts | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
counts | The | map of string -> number (int64) |
error | The | string |
LinkEvent
Namespace: fabric.links
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for LinkEvents is fabric.links | string |
event_type | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
link_id | The | string |
src_router_id | The | string |
dst_router_id | The | string |
protocol | The | string |
dial_address | The | string |
cost | The | number (int32) |
connections | The | list of LinkConnection |
LinkConnection
Fields
Field | Description | Type |
---|---|---|
id | The | string |
local_addr | The | string |
remote_addr | The | string |
MetricsEvent
Namespace: metrics
Fields
Field | Description | Type |
---|---|---|
metric_type | The | string |
namespace | The namespace is the event group. The namespace for MetricsEvents is metrics | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
source_id | The | string |
source_entity_id | The | string |
version | The | number (uint32) |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
metric | The | string |
metrics | The | map of string -> object |
tags | The | map of string -> string |
source_event_id | The | string |
RouterEvent
Namespace: fabric.routers
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for RouterEvents is fabric.routers | string |
event_type | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
router_id | The | string |
router_online | The | boolean |
SdkEvent
Namespace: sdk
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for SdkEvents is sdk | string |
event_type | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
identity_id | The | string |
ServiceEvent
Namespace: services
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for ServiceEvents is services | string |
version | The | number (uint32) |
event_type | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
service_id | The | string |
terminator_id | The | string |
count | The | number (uint64) |
interval_start_utc | The | number (int64) |
interval_length | The | number (uint64) |
SessionEvent
Namespace: edge.sessions
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for SessionEvents is edge.sessions | string |
event_type | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
session_type | The | string |
id | The | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
token | The | string |
api_session_id | The | string |
identity_id | The | string |
service_id | The | string |
TerminatorEvent
Namespace: fabric.terminators
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for TerminatorEvents is fabric.terminators | string |
event_type | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
timestamp | The timestamp is the datetime that the event was generated | timestamp |
service_id | The | string |
terminator_id | The | string |
router_id | The | string |
host_id | The | string |
router_online | The | boolean |
precedence | The | string |
static_cost | The | number (uint16) |
dynamic_cost | The | number (uint16) |
total_terminators | The | number (int) |
usable_default_terminators | The | number (int) |
usable_required_terminators | The | number (int) |
UsageEvent
Namespace: fabric.usage
Fields
Field | Description | Type |
---|---|---|
namespace | The namespace is the event group. The namespace for UsageEvents is fabric.usage | string |
version | The | number (uint32) |
event_type | The | string |
event_src_id | The event_src_id is the identifier of the controller which emitted the event | string |
source_id | The | string |
circuit_id | The | string |
usage | The | number (uint64) |
interval_start_utc | The | number (int64) |
interval_length | The | number (uint64) |
tags | The | map of string -> string |