Skip to main content

Graphite/Carbon client

Project description

Graphiti is python module for sending any metrics to graphite/carbon

Build status: build_status


  • Asynchronous sending
  • Combine several metrics to single packet
  • Uses pickle protocol
  • Handle temporary network outage
  • Gevent support


graphiti is installed via pip.

pip install graphiti

Usage Example


from graphiti import Client

client = Client(carbon_host)
client.send("graphiti.server.cpu_usage", 12.4, timestamp)
client.send("graphiti.server.cpu_usage", 15.1)  # current time will be used

project = "graphite"
server = "server"
client.send((project, server, "cpu_usage"), 11)  # metric name is graphiti.server.cpu_usage

# also you can aggregate values on client side
from graphiti import Aggregator, timeit

aggregator = Aggregator(client, interval=60)  # aggregate metrics during minute

aggregator.add_sum('processed_messages', 1)
aggregator.add_avg('message_processing_avg_time', time_taken)

with timeit(aggregator, ["graphiti", "server", "messages"]):
   process_message()  #  send metrics graphiti.server.messages.time_avg -- average time of message processing
                      #               graphiti.server.messages.time_sum -- total time of message processing
                      #               graphiti.server.messages.count -- number of processed message per minute



The Graphiti sources are hosted on bitbucket:

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for graphiti, version 0.1.13
Filename, size & hash File type Python version Upload date
graphiti-0.1.13.tar.gz (8.5 kB) View hashes Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page