public interface Trail
The primary interface for creating and reporting markers and events. A trail is a sequence of related events and markers representing the processing sequence for a dialog or transaction.
Modifier and Type | Method and Description |
---|---|
void |
associate(Trail otherTrail,
Scope scope)
Send a trail association message or correlation marker, depending on whether this trail and the given trail are on the same SAS server or not.
|
void |
end()
End this trail.
|
EventMessage |
event(Enum<? extends SasEventEnum> event)
Create an event message with given event.
|
void |
flush()
Write reported events and markers for this trail to permanent storage on the SAS server.
|
boolean |
isEnabled()
Check if reporting is enabled.
|
MarkerMessage |
marker(int markerId)
Create a marker message with given marker ID.
|
MarkerMessage |
marker(Markers marker)
Create a marker message with given marker.
|
void |
report(Enum<? extends SasEventEnum> event)
Build and report an event with no parameters
|
void |
report(EventMessage event)
Report an event created with
event(Enum) |
void |
report(MarkerMessage marker)
Report a marker created with
marker(Markers) or marker(int) |
void |
report(MarkerMessage marker0,
MarkerMessage marker1)
Report markers created with
marker(Markers) or marker(int) |
void |
report(MarkerMessage marker0,
MarkerMessage marker1,
MarkerMessage marker2)
Report markers created with
marker(Markers) or marker(int) |
void |
report(Markers marker)
Build and report a marker with no parameters
|
UUID |
steeringId() |
boolean isEnabled()
Check if reporting is enabled.
EventMessage event(Enum<? extends SasEventEnum> event)
Create an event message with given event.
event
- an event defined in an enum that implements SasEventEnumMarkerMessage marker(Markers marker)
Create a marker message with given marker.
marker
- a marker defined in the Markers
enumMarkerMessage marker(int markerId)
Create a marker message with given marker ID.
This method should not be used unless new Markers have been added to SAS that are not available in the Markers
enum.
markerId
- a marker constant known to SASUUID steeringId()
void associate(Trail otherTrail, Scope scope)
Send a trail association message or correlation marker, depending on whether this trail and the given trail are on the same SAS server or not.
With a SAS federation, it is possible that a pair of trails may not be reporting to the same SAS server. In this case this method will send a generic correlation marker using a UUID v4 (random) identifier to both SAS servers.
otherTrail
- scope
- void report(EventMessage event)
Report an event created with event(Enum)
event
- void report(MarkerMessage marker)
Report a marker created with marker(Markers)
or marker(int)
marker
- void report(MarkerMessage marker0, MarkerMessage marker1)
Report markers created with marker(Markers)
or marker(int)
marker0
- marker1
- void report(MarkerMessage marker0, MarkerMessage marker1, MarkerMessage marker2)
Report markers created with marker(Markers)
or marker(int)
marker0
- marker1
- marker2
- void report(Markers marker)
Build and report a marker with no parameters
marker
- void report(Enum<? extends SasEventEnum> event)
Build and report an event with no parameters
event
- void end()
End this trail.
Sends an Markers.END_MARKER
to denote the end of the user experience.
Trails must be ended to be searchable in SAS.
It is better to call end() twice than never.
Events received within 5s of an end marker being sent are associated with the same trail but trail-trail association can no longer occur.
void flush()
Write reported events and markers for this trail to permanent storage on the SAS server.
Sends an Markers.FLUSH_MARKER
to denote a break in control of the dialog.
Flushing a trail should be performed at the end of an active control phase where a delay is anticipated before the next dialog event.