Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a prober for connectivity of home Internet #23

Closed
FranklinYu opened this issue Oct 7, 2022 · 3 comments
Closed

Create a prober for connectivity of home Internet #23

FranklinYu opened this issue Oct 7, 2022 · 3 comments

Comments

@FranklinYu
Copy link
Owner

Need to know how good the connection is.

@FranklinYu
Copy link
Owner Author

FranklinYu commented Oct 7, 2022

Requirement

  1. The system shows a history of various metrics, instead of only the current status, so that we can analyze the trend, or know the duration of a network outage.
  2. The history is plotted in a graph/dashboard.
  3. The dashboard is interactive; it can show exact number on hover.

Design

Implement a program (a daemon, or a systemd timer) running on my home server. The program does following:

  1. Pings several domains, and/or makes HTTP requests to several URLs.
  2. Record the latency.
  3. Sends the latency data to Google Cloud Monitoring.

The domains and/or URLs should be configurable. I can probably use OpenTelemetry for Python (with its GCM support).

Alternatives considered

  • Smokeping. Satisfy requirement 1 and 2, but not 3. Feasible (tried before); good fallback.
  • Nagios. Seems more fancy than Smokeping; not sure about configuration complexity.
  • Prometheus with Grafana. Sounds like overkill, and I need to manage the graphing instance as well. Pro: more control than Google Cloud Monitoring.

@FranklinYu
Copy link
Owner Author

Updated design: Configure Cloudprober to probe the websites, and export them to Stackdriver.

@FranklinYu
Copy link
Owner Author

This is done. May write a blog about this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant