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