These examples show how to identify the different types of criteria and qualifiers, and resulting formulas when creating a derived column for an SLI.
For all events, return
duration_ms < 1000.
A trace root does not have a parent.
This SLI returns
true for trace roots whose response duration is under 100,
false for trace roots whose duration is over 100, and
null for non-roots.
IF( NOT(EXISTS($trace.parent_id)), LT($duration_ms, 100) )
Our qualifier here is whether
If it is, then this SLI only returns
true if both
duration_ms is under 100, and there is no error message.
IF( EQUALS($request.path, "/home"), AND( LT($duration_ms, 100), NOT(EXISTS($app.error)), ) )
The qualifier here is events that hit the “/main” endpoint, using the method post, and are not marked as error code
The criterion is that events must have a status code of
In addition, if they are part of a batch, then data processing must have taken less than 5 ms per item.
IF( AND( EQUALS($request.path, "main"), EQUALS($request.method, "POST"), NOT(EQUALS($response.status_code, 401)) ), AND( EQUALS($response.status_code, 200), LT( DIV( $duration_ms, IF($app.batch, $app.batch_total_datapoints, 5) ), 5 ) ) )