Jaeger

TIBCO Cloud Integration - Flogo (PAYG) provides an implementation of the OpenTracing framework using the Jaeger backend. In TIBCO Cloud Integration - Flogo (PAYG), the Flogo App binary is built with Jaeger implementation and can be enabled by setting the FLOGO_APP_MONITORING_OT_JAEGER environment variable to true. You can track how the flow went through, execution time for each activity, or in case of failure, the cause of the failure.

Each app is displayed as a service in the Jaeger UI. In TIBCO Cloud Integration - Flogo (PAYG), each flow is one operation (trace) and each activity in the flow is a span of the trace. A trace is the complete lifecycle of a group of spans. The flow is the root span and its activities are its child spans.

Pre-requisites: The following pre-requisites must be met before using the tracing capability in TIBCO Cloud Integration - Flogo (PAYG):
  • By default, Jaeger is not enabled in Flogo, hence tracing is not enabled. To enable Jaeger, set the FLOGO_APP_MONITORING_OT_JAEGER environment variable to true.
  • Ensure that the Jaeger server is installed, running, and accessible to TIBCO Cloud Integration - Flogo (PAYG).
  • If your Jaegar server is running on a machine other than the machine on which your app resides, be sure to set the JAEGER_AGENT_HOST and the JAEGER_AGENT_PORT JAEGER_ENDPOINT=http://<JAEGER_HOST>:<HTTP_TRACE_COLLECTOR_PORT>/api/traces environment variables. Refer to the https://github.com/jaegertracing/jaeger-client-go#environment-variables page for the environment variables that you can set.

TIBCO Cloud Integration - Flogo (PAYG)-Related Tags in Jaegar

In OpenTracing, each trace and span have their own tags. Tags are useful for filtering traces, for example if you want to search for a specific trace or time interval.
Note: Adding your own custom tags for any one span (activity) only is currently not supported. Any custom tags that you create will be added to all spans and traces.
TIBCO Cloud Integration - Flogo (PAYG) introduces the following Flogo-specific tags:
For flows
flow_name Name of the flow
flow_id Unique instance IDs that are generated by the Flogo engine. They are used to identify specific instances of a flow (such as when the same flow is triggered multiple times)
For activities
flow_name Name of the flow
flow_id Unique instance IDs that are generated by the Flogo engine. They are used to identify specific instances of a flow (such as when the same flow is triggered multiple times)
task_name Name of activity
taskInstance_id

Unique instance ID that are generated by the Flogo engine. This identity is used to identify the specific instance of an activity when an activity is iterated multiple times. This ID is used in looping contructs such as iterator or Repeat while true.

For subflows
parent_flow Name of the parent flow
parent_flow_id Unique ID of the parent flow
flow_name Name of the subflow
flow_id Unique instance IDs that are generated by the Flogo engine. They are used to identify specific instances of a flow (such as when the same flow is triggered multiple times)

The tag values are automatically generated by the TIBCO Cloud Integration - Flogo (PAYG) runtime. You cannot override the default values. You have the option to set custom tags by setting them in the environment variable JAEGER_TAGS as key/value pair. Keep in mind that these tags will be added to all spans and traces.

Refer to the https://github.com/jaegertracing/jaeger-client-go#environment-variables page for the environment variables that you can set.