Skip to main content

Graphite-web, without the interface. Just the rendering HTTP API.

Fork of graphite-api specifically for use with an InfluxDB backend.

This is a minimalistic API server that replicates the behavior of Graphite-web.

Implemented API calls:

  • /metrics/find

  • /metrics/expand

  • /render

No-ops:

  • /dashboard/find

  • /dashboard/load/<name>

  • /events/get_data

Changes from graphite-api

  • Hardcoded average consolidation of all data points removed - consolidation handled by storage back-end.

  • Cairo optional dependency - Json/raw formats by default.

  • Hardcoded legacy whisper index file requirement removed. (/srv/index)

  • maxdatapoints render query parameter removed - handled by storage back-end.

  • Whisper hardcoded default configuration removed.

  • Various fixes from pending graphite-api pull requests and back-ported fixes from graphite-web, asPercent among others.

  • Performance improvements.

Difference from graphite-web

  • Stateless. No need for a database.

  • No Pickle rendering.

  • No remote rendering.

  • JSON data in request bodies is supported, additionally to form data and querystring parameters.

  • Compatibility with python 2 and 3.

  • Easy to install and configure.

Goals

  • Solid codebase. Strict flake8 compatibility, good test coverage.

  • Ease of installation/use/configuration.

  • Compatibility with the original Graphite-web API and 3rd-party dashboards.

Non-goals

  • Support for Python versions older than 2.7.

  • Built-in support for every metric storage system in the world. Whisper is included by default, other storages are added via 3rd-party backends.

Documentation

On readthedocs.org or in the docs/ directory.

CairoCFFI dependency

Cairo is used to render graphs server side when target format is an image. By default, only Json and raw format outputs are enabled. Attempts to render image formats without Cairo will result in an error message that it is not installed.

It can be pulled in via extras - pip install influxgraph-graphite-api[cairo].

Hacking

Tox is used to run the tests for all supported environments. To get started from a fresh clone of the repository:

pip install tox
tox

Metadata

Release files for influxgraph-graphite-api 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for influxgraph-graphite-api 1.2.0
File Size Uploaded
influxgraph-graphite-api-1.2.0.tar.gz 100.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for influxgraph-graphite-api 1.2.0
File Interpreter ABI Platform
influxgraph_graphite_api-1.2.0-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 275.5 kB

Release files / influxgraph-graphite-api-1.2.0.tar.gz

Download URL influxgraph-graphite-api-1.2.0.tar.gz
Size 100.3 kB
Tags Source
SHA-256 checksum
How to use checksums
7473313a13ac6f2fbfc0e8e42ecccbfed26ac4483b72caacb41d38035bf7693c
BLAKE2b-256 checksum
How to use checksums
ea87db38ac3474567d542b20c71a00c57b6a9a4f4e9daf47dd9ecf1265b2a272
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / influxgraph_graphite_api-1.2.0-py2.py3-none-any.whl

Download URL influxgraph_graphite_api-1.2.0-py2.py3-none-any.whl
Size 175.2 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
75b54fcd1a39856c8782d81c8127ec8ef4d342a0422ed7981263b0a5e0be312d
BLAKE2b-256 checksum
How to use checksums
5c053f6e04673eea54434cc3c280adb8dee0a185a7a379732db837ce604005c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page