Export stats to a time-series database

Open
#17 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
ocaml

Research direction

Start by mapping the network data path and locating the network stack entry points where packets, bytes, DNS requests, and UDP NAT rules are available. Define the counters and the external InfluxDB output format, then consider the Datakit filter stretch goal. Done means the requested metrics can be exported and visualised, with user-defined filters treated separately.

Written by the indexing model from the issue text.

Description

enhancement help wanted

Since we're on the network data path we can measure the traffic as it passes through. We could measure

  • packets per second
  • bytes per second
  • DNS requests latency
  • DNS request failure rate
  • Number of active UDP NAT rules
    etc

This data could be sent to an external time-series database such as influxdb and then visualised.

This involves

  • writing a client for a time-series database (this may be as easy as connect()ing to it and writing .json messages)
  • adding some basic counters to the network stack
  • (stretch goal): allow the user to define their own filters via datakit and record these too
Dominant language
OCaml
Stars
1.2k
Forks
214
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from moby/vpnkit

All issues in moby/vpnkit

Similar issues

More Data Engineering issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.