-
Notifications
You must be signed in to change notification settings - Fork 20
Jtimon troubleshooting
This wiki page can be useful for troubleshooting purpose.
jtimon is a grpc client.
it is opensourced and written in GO
https://github.com/nileshsimaria/jtimon
Healthbot uses jtimon to collect telemetry on junos devices
Run this command to execute the script enforce_interfaces_admin_status.py
This script will configure healthbot to subscribe to the openconfig resource /interfaces
on devices vMX1
to vMX7
with a frequency of 15s.
$ python ./enforce_interfaces_admin_status.py
To Display information about sensors, run this command on a Junos device:
jcluser@vMX1> show agent sensors
To verify if there is an established connection between jtimon (grpc client) and a Junos device (grpc server), run this command on a Junos device:
jcluser@vMX1> show system connections | grep 32768
tcp4 0 0 100.123.1.0.32768 100.123.35.0.53404 ESTABLISHED
tcp46 0 0 *.32768 *.* LISTEN
Run these commands on healthbot to connect to jtimon container
$ docker ps | grep jtimon
$ docker exec -it <container-id> sh
Example with container_id 25791fbca153
$ docker exec -it 25791fbca153 sh
/u #
Run this command on jtimon container to read the jtimon config-file-list
/u # more /etc/jtimon/jti_oc_jtimon.json
{
"config_file_list": [
"/etc/jtimon/configs/vMX1.conf",
"/etc/jtimon/configs/vMX2.conf",
"/etc/jtimon/configs/vMX3.conf",
"/etc/jtimon/configs/vMX4.conf",
"/etc/jtimon/configs/vMX5.conf",
"/etc/jtimon/configs/vMX6.conf",
"/etc/jtimon/configs/vMX7.conf"
]
}
Run this command on jtimon container to list the jtimon config files
/u # ls /etc/jtimon/configs/
vMX1.conf vMX2.conf vMX3.conf vMX4.conf vMX5.conf vMX6.conf vMX7.conf
Run this command on jtimon container to read a jtimon config file
/u # more /etc/jtimon/configs/vMX1.conf
{
"cid": "vmx_vMX1_100.123.35.0",
"host": "100.123.1.0",
"user": "jcluser",
"password": "Juniper!1",
"port": 32768,
"influx": {
"BatchFrequency": 1000,
"dbname": "vmx_vMX1",
"password": "influxdb",
"port": 9092,
"recreate": false,
"server": "device-group-vmx-kapacitor",
"user": "influx",
"retention-policy": "vmx_vMX1"
},
"paths": [
{
"freq": 15000,
"path": "/interfaces/"
}
],
"log": {
"verbose": false
}
}
Run this command on jtimon container to exit the container
/u # exit
$
run this command on healthbot to show logs from jtimon container
$ docker logs 25791fbca153 --tail 30