Class ObservationNames

java.lang.Object
com.vaadin.observability.micrometer.trace.ObservationNames

public final class ObservationNames extends Object
Span name + attribute-key constants for Observability Kit Observations.

Span names follow Micrometer/OpenTelemetry conventions (lowercase dot-separated). They are intentionally distinct from the parallel Meter names (e.g. vaadin.request span vs. vaadin.request.duration timer) so that auto-Timer producers like DefaultMeterObservationHandler do not collide with the existing manual timers emitted by the binders.

Attribute values that also appear as a Meter tag value are aliased from MeterNames rather than repeated here, so a span and the Timer beside it can never describe the same outcome with different words.

  • Field Details

    • REQUEST

      public static final String REQUEST
      See Also:
    • UI_ACCESS

      public static final String UI_ACCESS
      See Also:
    • KEY_OUTCOME

      public static final String KEY_OUTCOME
      Low-cardinality key that becomes the MeterNames.TAG_OUTCOME tag once a meter-producing observation handler turns the Observation into a Timer. Aliased rather than re-spelled so the Observation path and the direct-recording path cannot drift apart.
      See Also:
    • KEY_REQUEST_TYPE

      public static final String KEY_REQUEST_TYPE
      See Also:
    • KEY_INTERACTION

      public static final String KEY_INTERACTION
      See Also:
    • KEY_ROUTE

      public static final String KEY_ROUTE
      See Also:
    • KEY_HTTP_METHOD

      public static final String KEY_HTTP_METHOD
      See Also:
    • KEY_SESSION_ID

      public static final String KEY_SESSION_ID
      See Also:
    • KEY_UI_ID

      public static final String KEY_UI_ID
      High-cardinality span attribute: the id of the UI the request belongs to, or UI_ID_UNKNOWN. Span-only; UI ids are unbounded over an application's lifetime, so this is never added as a Timer tag.
      See Also:
    • KEY_CLIENT_LOCATION

      public static final String KEY_CLIENT_LOCATION
      High-cardinality span attribute: the literal, un-templated browser path the request was sent from, or LOCATION_UNKNOWN. Span-only; use the KEY_ROUTE tag of the navigation meters for templated, cardinality-capped view attribution.
      See Also:
    • INTERACTION_NONE

      public static final String INTERACTION_NONE
      No interaction applies (non-UIDL requests, or a UIDL request before a poll/navigation listener marks it). Kept as an explicit value so every vaadin.request.duration Timer carries the KEY_INTERACTION tag key: Prometheus rejects same-named meters whose tag-key sets differ, so the key must be present on all requests, not just the ones that resolve to a concrete interaction.
      See Also:
    • INTERACTION_POLL

      public static final String INTERACTION_POLL
      A poll request triggered by a configured poll interval.
      See Also:
    • INTERACTION_NAVIGATION

      public static final String INTERACTION_NAVIGATION
      The request performed a server-side navigation.
      See Also:
    • INTERACTION_RPC

      public static final String INTERACTION_RPC
      A real client-to-server RPC (DOM event, @ClientCallable, property sync, return channel) that we cannot break down further without parsing the UIDL body.
      See Also:
    • UI_ID_UNKNOWN

      public static final String UI_ID_UNKNOWN
      See Also:
    • LOCATION_UNKNOWN

      public static final String LOCATION_UNKNOWN
      See Also:
    • OUTCOME_SUCCESS

      public static final String OUTCOME_SUCCESS
      See Also:
    • OUTCOME_ERROR

      public static final String OUTCOME_ERROR
      See Also:
    • OUTCOME_REROUTED

      public static final String OUTCOME_REROUTED
      See Also:
    • OUTCOME_FORWARDED

      public static final String OUTCOME_FORWARDED
      See Also:
    • OUTCOME_UNKNOWN

      public static final String OUTCOME_UNKNOWN
      See Also:
    • REQUEST_TYPE_UIDL

      public static final String REQUEST_TYPE_UIDL
      See Also:
    • REQUEST_TYPE_HEARTBEAT

      public static final String REQUEST_TYPE_HEARTBEAT
      See Also:
    • REQUEST_TYPE_PUSH

      public static final String REQUEST_TYPE_PUSH
      See Also:
    • REQUEST_TYPE_STATIC

      public static final String REQUEST_TYPE_STATIC
      See Also:
    • REQUEST_TYPE_OTHER

      public static final String REQUEST_TYPE_OTHER
      See Also:
    • RPC

      public static final String RPC
      Observation/span name for a server-side RPC invocation.
      See Also:
    • DB_QUERY

      public static final String DB_QUERY
      Observation/span name for a single JDBC query execution.
      See Also:
    • DATA_COUNT

      public static final String DATA_COUNT
      Observation/span name for a data provider count query.
      See Also:
    • DATA_FETCH

      public static final String DATA_FETCH
      Observation/span name for a data provider fetch query.
      See Also:
    • KEY_DATA_OFFSET

      public static final String KEY_DATA_OFFSET
      Span attribute: index of the first item a fetch query asked for.
      See Also:
    • KEY_DATA_LIMIT

      public static final String KEY_DATA_LIMIT
      Span attribute: number of items a fetch query asked for.
      See Also:
    • KEY_DATA_ROWS

      public static final String KEY_DATA_ROWS
      Span attribute: number of items a fetch query returned.
      See Also:
    • KEY_DATA_COMPONENT

      public static final String KEY_DATA_COMPONENT
      High-cardinality span attribute: the class name of the component whose data is being loaded. Span-only, like KEY_COMPONENT, because of its cardinality.
      See Also:
    • KEY_DB_ROWS

      public static final String KEY_DB_ROWS
      Span attribute: number of rows read from the query's result set.
      See Also:
    • KEY_DB_STATEMENT

      public static final String KEY_DB_STATEMENT
      Span attribute: the (parameterized) SQL statement. Only attached when statement capture is explicitly enabled, as it is higher cardinality and may be sensitive.
      See Also:
    • KEY_EVENT_NAME

      public static final String KEY_EVENT_NAME
      High-cardinality span attribute: the human-readable invocation name (DOM event name, invoked method name, navigation location, ...). Span-only; it is never added as a Timer tag because of its cardinality.
      See Also:
    • KEY_COMPONENT

      public static final String KEY_COMPONENT
      High-cardinality span attribute: the class name of the Vaadin Component that the invocation targets, when it can be resolved from the target node. Span-only; it is never added as a Timer tag because of its cardinality.
      See Also: