Skip to content

Latest commit

 

History

History
63 lines (52 loc) · 4.3 KB

README.md

File metadata and controls

63 lines (52 loc) · 4.3 KB

datadog-dump1090

Total alerts Language grade: Python

Datadog custom check to report dump1090 statistic

Introduction

Dump 1090 is a Mode S decoder specifically designed for RTLSDR devices. https://github.com/antirez/dump1090

This custom check report all stat on minute basis in dump1090 namespace:

  • local: statistics about messages received from a local SDR dongle. Not present in --net-only mode. Has subkeys:
    • modeac: number of Mode A / C messages decoded
    • modes: number of Mode S preambles received. This is not the number of valid messages!
    • bad: number of Mode S preambles that didn't result in a valid message
    • unknown_icao: number of Mode S preambles which looked like they might be valid but we didn't recognize the ICAO address and it was one of the message types where we can't be sure it's valid in this case.
  • remote: statistics about messages received from remote clients. Only present in --net or --net-only mode. Has subkeys:
    • modeac: number of Mode A / C messages received.
    • modes: number of Mode S messages received.
    • bad: number of Mode S messages that had bad CRC or were otherwise invalid.
    • unknown_icao: number of Mode S messages which looked like they might be valid but we didn't recognize the ICAO address and it was one of the message types where we can't be sure it's valid in this case.
  • cpu: statistics about CPU use. Has subkeys:
    • demod: milliseconds spent doing demodulation and decoding in response to data from a SDR dongle
    • reader: milliseconds spent reading sample data over USB from a SDR dongle
    • background: milliseconds spent doing network I/O, processing received network messages, and periodic tasks.
  • cpr: statistics about Compact Position Report message decoding. Has subkeys:
    • surface: total number of surface CPR messages received
    • airborne: total number of airborne CPR messages received
    • global_ok: global positions successfuly derived
    • global_bad: global positions that were rejected because they were inconsistent
    • global_range: global positions that were rejected because they exceeded the receiver max range
    • global_speed: global positions that were rejected because they failed the inter-position speed check
    • global_skipped: global position attempts skipped because we did not have the right data (e.g. even/odd messages crossed a zone boundary)
    • local_ok: local (relative) positions successfully found
    • local_aircraft_relative: local positions found relative to a previous aircraft position
    • local_receiver_relative: local positions found relative to the receiver position
    • local_skipped: local (relative) positions not used because we did not have the right data
    • local_range: local positions not used because they exceeded the receiver max range or fell into the ambiguous part of the receiver range
    • local_speed: local positions not used because they failed the inter-position speed check
    • filtered: number of CPR messages ignored because they matched one of the heuristics for faulty transponder output
  • tracks: statistics on aircraft tracks. Each track represents a unique aircraft and persists for up to 5 minutes after the last message from the aircraft is heard. If messages from the same aircraft are subsequently heard after the 5 minute period, this will be counted as a new track.
    • all: total tracks created
    • single_message: tracks consisting of only a single message. These are usually due to message decoding errors that produce a bad aircraft address.
  • http_requests: number of HTTP requests handled.
  • messages: total number of messages accepted by dump1090 from any source

Instructions

  • Copy the custom check and check config file to the Datadog agent install directory
sudo -Hu dd-agent cp dump1090.yaml /etc/datadog-agent/conf.d/
sudo -Hu dd-agent cp dump1090.py /etc/datadog-agent/checks.d/
  • Restart the Datadog agent