# Language Guide

<details>

<summary><a href="/pages/hRhjgWO68UpBmkyUEP6I">Metric Libraries</a></summary>

* Ruby [hosted\_graphite | gem](https://rubygems.org/gems/hosted_graphite)
* Python [graphyte | pip](https://pypi.org/project/graphyte/)
* NodeJS [graphite | npm](https://www.npmjs.com/package/graphite)
* Java [Dropwizard module](http://www.dropwizard.io/1.1.0/docs/manual/configuration.html#graphite-reporter)
* StatsD [clients](https://github.com/statsd/statsd/blob/master/docs/client_implementations.md)

</details>

<details>

<summary><a href="/pages/RXCgGyQdaF80Xr4i3pLX">.NET</a></summary>

* [Interesting .NET Metrics Libraries](https://docs.hostedgraphite.com/pages/RXCgGyQdaF80Xr4i3pLX#interesting-.net-metrics-libraries)
* [Sending a metric via UDP](/language-guide/.net.md#sending-a-metric-via-udp)

</details>

<details>

<summary><a href="/pages/VfbsAq7KkoApi2aAbCYP">Go</a></summary>

* [Sending a metric via TCP](/language-guide/go.md#sending-a-metric-via-tcp)
* [Sending a metric via UDP](/language-guide/go.md#sending-a-metric-via-udp)
* [Sending a metric using HTTP](/language-guide/go.md#sending-a-metric-using-http)

</details>

<details>

<summary><a href="/pages/l7plgVJcIwW2BG46ovCW">Java</a></summary>

* [Interesting Java Metrics Libraries](/language-guide/java.md#interesting-java-metrics-libraries)
* [Java DNS Behaviour](/language-guide/java.md#java-dns-behaviour)
* [Sending a metric via TCP](/language-guide/java.md#sending-a-metric-via-tcp)
* [Sending a metric via UDP](/language-guide/java.md#sending-a-metric-via-udp)
* [Sending a metric via HTTP POST](/language-guide/java.md#sending-a-metric-via-http-post)
* [Google App Engine HTTP Post](/language-guide/java.md#google-app-engine-http-post)

</details>

<details>

<summary><a href="/pages/0vjTXBw7STKSbJzA35wn">Javascript</a></summary>

* [Interesting Javascript Metrics Libraries](/language-guide/javascript.md#interesting-javascript-metrics-libraries)

</details>

<details>

<summary><a href="/pages/cwFGErUHJztjrXHHlQtO">Node.js</a></summary>

* [Sending a metric via TCP](/language-guide/node.js.md#sending-a-metric-via-tcp)
* [Sending a metric via UDP](/language-guide/node.js.md#sending-a-metric-via-udp)
* [Sending a metric via StatsD](https://docs.hostedgraphite.com/language-guide/node.js#sending-a-metric-via-statsd)
* [Sending a metric vis HTTP POST](https://docs.hostedgraphite.com/language-guide/node.js#sending-a-metric-via-http-post)

</details>

<details>

<summary><a href="/pages/6tqwJFJ9mWdBxPWO5CT9">PHP</a></summary>

* [Interesting PHP Metrics Libraries](/language-guide/php.md#interesting-php-metrics-libraries)
* [Sending a metric via TCP](/language-guide/php.md#sending-a-metric-via-tcp)
* [Sending a metric via UDP](/language-guide/php.md#sending-a-metric-via-udp)
* [Sending a metric via UDP on Heroku](/language-guide/php.md#sending-a-metric-via-udp-on-heroku)

</details>

<details>

<summary><a href="/pages/HVXssWIAL9rtk5B9MkS6">Postman</a></summary>

* [Sending a metric via HTTP POST](/language-guide/postman.md#sending-a-metric-via-http-post)

</details>

<details>

<summary><a href="/pages/SchWQPvBa4MAxHmtloX9">Python 2.x</a></summary>

* [Interesting Python Graphite Libraries](/language-guide/python-2.x.md#interesting-python-graphite-libraries)
* [Sending a metric via TCP](/language-guide/python-2.x.md#sending-a-metric-via-tcp)
* [Sending a metric via UDP](/language-guide/python-2.x.md#sending-a-metric-via-udp)
* [Sending a metric using HTTP POST](/language-guide/python-2.x.md#sending-a-metric-using-http-post)
* [Sending a metric via TCP over TLS tunnel](/language-guide/python-2.x.md#sending-a-metric-via-tcp-over-tls-tunnel)

</details>

<details>

<summary><a href="/pages/SchWQPvBa4MAxHmtloX9#python-3.x">Python 3.x</a></summary>

* [Sending a metric via TCP](/language-guide/python-2.x.md#sending-a-metric-via-tcp-1)
* [Sending a metric via UDP](/language-guide/python-2.x.md#sending-a-metric-via-udp-1)
* [Sending a metric using HTTP POST](/language-guide/python-2.x.md#sending-a-metric-using-http-post-1)
* [Sending a metric via TCP over TLS tunnel](/language-guide/python-2.x.md#sending-a-metric-via-tcp-over-tls-tunnel-1)
* [Sending a metric via StatsD](https://docs.hostedgraphite.com/language-guide/python-2.x#python-3.x)

</details>

<details>

<summary><a href="/pages/j6vphiwsZ4MAD9Ygl8x6">Python Pickle</a></summary>

* [Carbon Relay](/language-guide/python-pickle.md#carbon-relay)
* [Carbon Relay Secured With Stunnel](/language-guide/python-pickle.md#carbon-relay-secured-with-stunnel)

</details>

<details>

<summary><a href="/pages/BLPwhHaOnv2jEdD09Pp9">Ruby</a></summary>

* [Installing the Ruby Gem](/language-guide/ruby.md#installing-the-ruby-gem)
* [Using the Gem to send via TCP](/language-guide/ruby.md#using-the-gem-to-send-via-tcp)
* [Using the Gem to send via UDP](/language-guide/ruby.md#using-the-gem-to-send-via-udp)
* [Using the Gem to send via HTTP](/language-guide/ruby.md#using-the-gem-to-send-via-http)
* [Using the Gem to send via StatsD](/language-guide/ruby.md#using-the-gem-to-send-via-statsd)
* [Basic Ruby](/language-guide/ruby.md#basic-ruby)
* [Sending a metric via TCP](/language-guide/ruby.md#sending-a-metric-via-tcp)
* [Sending a metric via UDP](/language-guide/ruby.md#sending-a-metric-via-udp)
* [Sending a metric via HTTP POST](/language-guide/ruby.md#sending-a-metric-via-http-post)
* [Sending a metric via StatsD](https://docs.hostedgraphite.com/language-guide/ruby#sending-a-metric-via-statsd)

</details>

<details>

<summary><a href="/pages/UJbarwnONXDhsOPOW3rQ">Shell</a></summary>

* [Sending a metric via TCP](/language-guide/shell.md#sending-a-metric-via-tcp)
* [Sending a metric via UDP](/language-guide/shell.md#sending-a-metric-via-udp)
* [Sending a metric via TCP over TLS](/language-guide/shell.md#sending-a-metric-via-tcp-over-tls)
* [Sending a metric via HTTPs](/language-guide/shell.md#sending-a-metric-via-https)
* [Sending a metric via StatsD](https://docs.hostedgraphite.com/language-guide/shell#sending-a-metric-via-statsd)
* [Send multiple metrics with Curl](/language-guide/shell.md#send-multiple-metrics-with-curl)

</details>

<details>

<summary><a href="https://docs.hostedgraphite.com/language-guide/typescript">Typescript</a></summary>

* [Sending a metric via TCP](https://docs.hostedgraphite.com/language-guide/typescript#sending-a-metric-via-tcp)
* [Sending a metric via UDP](https://docs.hostedgraphite.com/language-guide/typescript#sending-a-metric-via-udp)
* [Sending a metric via HTTP POST](https://docs.hostedgraphite.com/language-guide/typescript#sending-a-metric-via-http-post)
* [Sending a metric via StatsD](https://docs.hostedgraphite.com/language-guide/typescript#sending-a-metric-via-statsd)

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hostedgraphite.com/language-guide.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
