Troubleshooting Guide

To check if containers are running, execute the following command. By default you should have 3 containers running

docker ps

To force containers to stop, execute

make stop

To access the CLI of the main container for debug, Start a SSH session using the insecure_key provided in the repo and the script “docker.cli.sh”

make cli

For the Input containers named __open-nti-input-*__ you can access the logs directly from docker by running :

docker logs <container name or ID>

Data Collection Agent

Q - I configured hosts/credential/commands.yaml files but I’m not seeing anything on the dashboard

To make sure everything is working as expected, you can run the Data Collection Agent in debug mode

make cron-debug TAG=lab

Data Streaming Collector

Q - I’m streaming data from devices but I’m not seeing anything on the Dashboard

To reach the dashboard, traffic have to go through the following path: Device >(A)> Host >(B)> Container >(C)> Fluentd >(B)> InfluxDB >(E)> Grafana

A - Check the timestamp on the devices and on the server

Timestamp MUST match on both side, the server and the junos devices. It’s the most common issue.

B - Check that traffic is reaching the Host

The best solution is to use TCPDUMP on the Host and filter on destination port

On Unix/Mac
tcpdump -i <ingress interface> -n dst port <dest port number>

C - Check that traffic is reaching the container

The best solution is to use TCPDUMP inside the container

./docker.cli.sh
tcpdump -i eth0 -n dst port <dest port number>

RPF check might be a problem if you see incoming packets in A but not in B.
If you e.g. use Src IP for which there is no route entry on host OS (Ubuntu
does RPF check as default), packets would be discarded.

D - Check Fluentd**

Check fluentd logs, inside the container

docker logs opennti_input_jti

Nothing should be printed if everything is right

E - Check if data is properly reaching the database

  • connect on Influxdb management interface with a browser on port 8083
  • Select Juniper as database on top right corner
  • Run query `show measurements` to see what is present
  • Execute query for `SELECT * FROM "<measurements>"`

Note

Destination tables will vary depending of the incoming traffic
  • For MX > jnpr.jvision
  • For QFX5100/EX4300 > jnpr.analyticsd