https://github.com/simplifi/nginx-dogstatsd
https://github.com/simplifi/nginx-dogstatsd
Last synced: 8 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/simplifi/nginx-dogstatsd
- Owner: simplifi
- License: other
- Created: 2021-12-28T22:21:00.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-07-28T21:23:32.000Z (almost 4 years ago)
- Last Synced: 2025-07-05T03:14:27.452Z (12 months ago)
- Language: C
- Size: 21.5 KB
- Stars: 0
- Watchers: 11
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.mkd
- License: LICENSE
Awesome Lists containing this project
README
nginx-dogstatsd
===============
An nginx module for sending statistics to dogstatsd.
This is how to use the nginx-dogstatsd module:
http {
# Set the server that you want to send stats to.
dogstatsd_server your.dogstatsd.server.com;
# Randomly sample 10% of requests so that you do not overwhelm your dogstatsd server.
# Defaults to sending all dogstatsd (100%).
dogstatsd_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.
dogstatsd_count "your_product.requests" 1;
location / {
# Increment the key by 1 when this location is hit.
dogstatsd_count "your_product.pages.index_requests" 1;
# Increment the key by 1 when this location is hit with a tag based on a variable
dogstatsd_count "your_product.pages.index_requests" 1 "server:$server_name";
# Increment the key by 1, but only if $request_completion is set to something.
dogstatsd_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 empty-string
# it will not be sent. Thus, there is no need to add a test. 0 values are sent as timings since they are significant.
dogstatsd_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.
dogstatsd_count "your_product.custom_$upstream_http_x_some_custom_header" 1 ""
"$upstream_http_x_some_custom_header";
proxy_pass http://some.other.domain.com;
}
}
}