Setting up Jaeger Tracing
OpenTracing enables distributed tracing which makes it possible to monitor RPCs or transactions across process boundaries. You can leverage this functionality to help track and diagnose communication problems that may arise in distributed deployments of Meridian components; for example, Core instance, Minion, and/or Sentinel. OpenTracing is supported on RPC calls between Meridian Core instance for Sink API calls (including flows) between Minion and Sentinel. By default the tracing instrumentation Meridian is disabled (a no-op tracer is used.)
The project Jaeger is an open source, end-to-end distributed tracing software. It lets you monitor and troubleshoot transactions in distributed software components when Meridian is deployed with Minion and Sentinel. Meridian components support Jaeger which implements the OpenTracing API.
Enable tracing with Jaeger on Core instance by installing the opennms-core-tracing-jaeger feature and creating a configuration file with the Jaeger specific settings.
| Configurations has to be made in the etcdirectory relative to the Meridian Core home directory.
      Depending on your operating system the home directory is in/usr/share/opennmsfor Debian/Ubuntu or/opt/opennmsfor CentOS/RHEL. | 
sudo vi etc/featuresBoot.d/jaeger.bootopennms-core-tracing-jaeger| Uninstalling the opennms-core-tracing-jaegerfeature at runtime is not yet supported.
      To disable tracing with Jaeger, remove the reference from the features boot file and restart the Core. | 
sudo vi etc/opennms.properties.d/jaeger.propertiesorg.opennms.core.tracer=jaeger(1)
JAEGER_AGENT_HOST=my-jaeger-host(2)| 1 | Set Jaeger as the tracing implementation | 
| 2 | Replace the my-jaeger-hostwith your Jaeger instance where you collect the tracing information | 
| Available configuration options are listed in the Jaeger Core Readme. | 
| The Jaeger service name is the Instance-IDof the Core instance. | 
sudo systemctl restart opennmsEnable tracing with Jaeger on Minion by installing the opennms-core-tracing-jaeger feature.
| Configurations has to be made in the etcdirectory relative to the Minion home directory.
      Depending on your operating system the home directory is in/usr/share/minionfor Debian/Ubuntu or/opt/minionfor CentOS/RHEL. | 
sudo vi etc/featuresBoot.d/jaeger.bootopennms-core-tracing-jaeger| Uninstalling the opennms-core-tracing-jaegerfeature at runtime is not yet supported.
      To disable tracing with Jaeger, remove the reference from the features boot file and restart Minion. | 
sudo vi etc/custom.system.propertiesJAEGER_AGENT_HOST=my-jaeger-host(1)| 1 | Replace the my-jaeger-hostwith your Jaeger instance where you collect the tracing information | 
| Available configuration options are listed in the Jaeger Core Readme. | 
| The Jaeger service name is the Location-Name@Instance-IDfrom the Minion. | 
sudo systemctl restart minionEnable tracing with Jaeger on Sentinel by installing the opennms-core-tracing-jaeger feature.
| Configurations has to be made in the etcdirectory relative to the Sentinel home directory.
      Depending on your operating system the home directory is in/usr/share/sentinelfor Debian/Ubuntu or/opt/sentinelfor CentOS/RHEL. | 
sudo vi etc/featuresBoot.d/jaeger.bootopennms-core-tracing-jaeger| Uninstalling the opennms-core-tracing-jaegerfeature at runtime is not yet supported.
      To disable tracing with Jaeger, remove the reference from the features boot file and restart Sentinel. | 
sudo vi etc/custom.system.propertiesJAEGER_AGENT_HOST=my-jaeger-host(1)| 1 | Replace the my-jaeger-hostwith your Jaeger instance where you collect the tracing information | 
| Available configuration options are listed in the Jaeger Core Readme. | 
| The Jaeger service name is the Instance-IDfrom Sentinel. | 
sudo systemctl restart sentinel