Skip to content

Commit 3f00a11

Browse files
added tcprtt check
1 parent 14e9b06 commit 3f00a11

File tree

1 file changed

+82
-0
lines changed

1 file changed

+82
-0
lines changed

content/integrations/tcprtt.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
---
2+
title: TCP RTT check
3+
integration_title: TCP RTT Check
4+
kind: integration
5+
newhlevel: true
6+
---
7+
# Overview
8+
9+
The TCP RTT check reports on roundtrip times between the host the agent is running on and any host it is communicating with. This check is passive and will only report RTT times for packets being sent and received from outside the check. The check itself will not send any packets.
10+
11+
This check is only shipped in the 64-bit DEB and RPM Datadog Agent packages.
12+
13+
# Installation
14+
15+
The check uses timestamps provided by the PCAP library to compute the time between any outgoing packet and the corresponding TCP acknowledgement. As such, PCAP must be installed and configured.
16+
17+
Debian-based systems should use one of the following:
18+
19+
$ sudo apt-get install libcap
20+
$ sudo apt-get install libcap2-bin
21+
22+
Redhat-based systems should use one of these:
23+
24+
$ sudo yum install libcap
25+
$ sudo yum install compat-libcap1
26+
27+
Finally, configure PCAP:
28+
29+
$ sudo setcap cap_net_raw+ep /opt/datadog-agent/bin/go-metro
30+
31+
# Configuration
32+
33+
Edit the ```go-metro.yaml``` file in your agent's ```conf.d``` directory. The following is an example file that will show the TCP RTT times for app.datadoghq.com and 192.168.0.22:
34+
35+
init_config:
36+
snaplen: 512
37+
idle_ttl: 300
38+
exp_ttl: 60
39+
statsd_ip: 127.0.0.1
40+
statsd_port: 8125
41+
log_to_file: true
42+
log_level: info
43+
44+
instances:
45+
- interface: eth0
46+
tags:
47+
- env:prod
48+
ips:
49+
- 45.33.125.153
50+
hosts:
51+
- app.datadoghq.com
52+
53+
54+
# Validation
55+
56+
To validate that the check is running correctly, you should see `system.net.tcp.rtt` metrics showing in the Datadog interface. Also, if you run `sudo /etc/init.d/datadog-agent status`, you should see something similar to the following:
57+
58+
● datadog-agent.service - "Datadog Agent"
59+
Loaded: loaded (/lib/...datadog-agent.service; enabled; vendor preset: enabled)
60+
Active: active (running) since Thu 2016-03-31 20:35:27 UTC; 42min ago
61+
Process: 10016 ExecStop=/opt/.../supervisorctl -c /etc/dd-....conf shutdown (code=exited, status=0/SUCCESS)
62+
Process: 10021 ExecStart=/opt/.../start_agent.sh (code=exited, status=0/SUCCESS)
63+
Main PID: 10025 (supervisord)
64+
CGroup: /system.slice/datadog-agent.service
65+
├─10025 /opt/datadog-...python /opt/datadog-agent/bin/supervisord -c /etc/dd-agent/supervisor.conf
66+
├─10043 /opt/datadog-...python /opt/datadog-agent/agent/dogstatsd.py --use-local-forwarder
67+
├─10044 /opt/datadog-agent/bin/go-metro -cfg=/etc/dd-agent/conf.d/go-metro.yaml
68+
├─10046 /opt/datadog-.../python /opt/datadog-agent/agent/ddagent.py
69+
└─10047 /opt/datadog-.../python /opt/datadog-agent/agent/agent.py foreground --use-local-forwarder
70+
71+
If the TCP RTT check has started you should see something similar to the go-metro line above.
72+
73+
This is a passive check, so unless there are packets actively being sent to the hosts mentioned in the yaml file, the metrics will not be reported.
74+
75+
# Metrics
76+
77+
|TCP RTT Metrics|
78+
|-----|-----|
79+
|system.net.tcp.rtt|
80+
|system.net.tcp.rtt.avg|
81+
|system.net.tcp.rtt.jitter|
82+
{:.table}

0 commit comments

Comments
 (0)