graphyte
Python 3 compatible library to send data to a Graphite metrics server (Carbon)
Decision gist · record as of 2026-08-14
No. The package is abandoned (last release 2022-01-23, 1664 days ago) with no indication of maintenance for modern Python versions. While it has no known vulnerabilities and carries a permissive MIT license, the lack of active support and uncertain compatibility with Python 3.10+ makes it a poor choice for new projects. Consider an actively maintained alternative if you need to send metrics to Graphite.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- High install friction: no runtime dependencies, but the package has been abandoned since January 2022 (1664 days without a release).
- The last commit was 2022-01-23 and the repository is not archived, leaving maintenance status uncertain for modern Python versions.
License · maintenance · safety
MIT License (permissive) — MIT License (permissive) — you can use, modify, and distribute graphyte freely in commercial and private projects with minimal restrictions, requiring only attribution and inclusion of the license notice.
last release 2022-01-23 (1664 days) · last repo commit 2022-01-23 · 80 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 140,553 downloads/mo, #11,268 on PyPI
Alternatives
Verify before relying
pip install graphyte
import graphyte
graphyte.init('graphite.example.com', prefix='system.sync')
graphyte.send('foo.bar', 42)- Whether the package works reliably with Python versions released after the last commit (2022-01-23), particularly 3.10+
- Current stability and any breaking changes in modern Graphite/Carbon server versions
- Whether background thread batching (interval parameter) is production-ready for high-volume metric submission
What it is and what it does
graphyte is a minimal Python library for sending metrics to a Graphite/Carbon server. It was created as a Python 3-compatible alternative to graphitesend, replacing gevent with the standard library's threading module for asynchronous operation. The library supports both synchronous sends and background-thread batching at a configurable interval, TCP and UDP protocols, tagged metrics, and direct command-line invocation.
You initialize a default sender with a server hostname and optional prefix, then call send() to submit metric values. For advanced use cases, you can instantiate multiple Sender instances targeting different servers, subclass Sender to customize message formatting or error handling, or configure whether send errors are logged or raised. The library has no external runtime dependencies.
Use it for
- Submit application metrics to a Graphite server from a Python service or web application
- Batch metric sends on a background thread to avoid blocking request handlers in production systems
- Send custom application instrumentation (latency, counters, gauges) to a centralized metrics store
- Integrate metrics collection into a monitoring pipeline that uses Graphite as its backend
- Send metrics via UDP for low-overhead fire-and-forget submission in high-throughput scenarios
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No.
The package is abandoned (last release 2022-01-23, 1664 days ago) with no indication of maintenance for modern Python versions. While it has no known vulnerabilities and carries a permissive MIT license, the lack of active support and uncertain compatibility with Python 3.10+ makes it a poor choice for new projects. Consider an actively maintained alternative if you need to send metrics to Graphite.
Install
graphyte on PyPI
Before you install
High install friction: no runtime dependencies, but the package has been abandoned since January 2022 (1664 days without a release). The last commit was 2022-01-23 and the repository is not archived, leaving maintenance status uncertain for modern Python versions.
License in practice
MIT License (permissive) — you can use, modify, and distribute graphyte freely in commercial and private projects with minimal restrictions, requiring only attribution and inclusion of the license notice.
Quickstart
pip install graphyte
import graphyte
graphyte.init('graphite.example.com', prefix='system.sync')
graphyte.send('foo.bar', 42)
Verify before relying
- Whether the package works reliably with Python versions released after the last commit (2022-01-23), particularly 3.10+
- Current stability and any breaking changes in modern Graphite/Carbon server versions
- Whether background thread batching (interval parameter) is production-ready for high-volume metric submission
Package facts
| License | MIT License permissive |
| Python support | Not specified |
| Install friction | High. Source build required |
| Runtime dependencies | None |
| Maintenance | Abandoned 1,664 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 140,553 / month, #11,268 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: graphyte-1.7.1.tar.gz
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “graphite metrics client”
- graphytegraphyte sends metrics to a Graphite/Carbon server over TCP or UDP,…
- graphitesendSends metrics to Graphite's Carbon backend over TCP or UDP, with…
- python-statsdA client library for sending metrics to Etsy's statsd server, which…
Give your agent the search over MCP, or paste the wish link into any chat.
More Monitoring packages
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
Provides generated Python code for OpenTelemetry semantic conventions, enabling standardized attribute naming and constant definitions for instrumentation and telemetry collection.
Install it if you are using OpenTelemetry and want to follow semantic conventions correctly.
Provides the reference implementation of the OpenTelemetry API for collecting and exporting traces, metrics, and logs from Python applications.
Provides the abstract API and interfaces for OpenTelemetry instrumentation in Python, defining how to emit traces, metrics, and logs without tying code to a specific SDK implementation.
Exports OpenTelemetry observability data to an OpenTelemetry Collector using Protobuf-encoded messages over HTTP.
Install it if you are using OpenTelemetry in Python and need to send data to a Collector over HTTP.
Provides automatic instrumentation commands and programmatic APIs to inject distributed tracing into Python applications without code changes, detecting and instrumenting packages used by your program.
Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment.
See also codecarbon · graphitesend · whisper · statsd · statsd-tags · python-statsd · awsme · datadog · questdb · zabbix-utils