Skip to content

markocelan/nginx-statsd

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 

Repository files navigation

nginx-statsd

An nginx module for sending statistics to statsd.

This is how to use the nginx-statsd module:

	http {

		# Set the server that you want to send stats to.
		statsd_server your.statsd.server.com;

		# Randomly sample 10% of requests so that you do not overwhelm your statsd server.
		# Defaults to sending all statsd (100%).
		statsd_sample_rate 10; # 10% of requests


		server {
			listen 80;
			server_name www.your.domain.com;

			# Increment "your_product.requests" by 1 whenever any request hits this server.
			statsd_count "your_product.requests" 1;
			# Or one can use [Influx Telegraf style tags](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/statsd#influx-statsd).
			# It is also compatible with [statsd_exporter](https://github.com/prometheus/statsd_exporter)
			statsd_count "your_product_requests_total,vhost=$host,return_code=$status" 1;

			location / {

				# Increment the key by 1 when this location is hit.
				statsd_count "your_product.pages.index_requests" 1;

				# Increment the key by 1, but only if $request_completion is set to something.
				statsd_count "your_product.pages.index_responses" 1 "$request_completion";

				# Send a timing to "your_product.pages.index_response_time" equal to the value
				# returned from the upstream server. If this value evaluates to 0 or empty-string,
				# it will not be sent. Thus, there is no need to add a test.
				statsd_timing "your_product.pages.index_response_time" "$upstream_response_time";

				# Increment a key based on the value of a custom header. Only sends the value if
				# the custom header exists in the upstream response.
				statsd_count "your_product.custom_$upstream_http_x_some_custom_header" 1
					"$upstream_http_x_some_custom_header";

				proxy_pass http://some.other.domain.com;
			}
		}
	}

About

An nginx module for sending stats to statsd.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 100.0%