Akshay Rawat
Akshay Rawat

Reputation: 4784

NGinx - Count requests for a particular URL pattern

I wanted to count the number of requests to a particular url pattern. Not sure how this is done in NGinx.

Is this possible:

When an request to the url pattern comes, we serve that request first. Then NGinx makes another request asynchronously to a server which counts the impression. NGinx does not wait for the response of this request.

Thanks.

Upvotes: 9

Views: 6572

Answers (2)

Dayo
Dayo

Reputation: 12785

You can use the post_action directive to trigger a sub_request after the main request is complete.

Useful for the sort of logging you have in mind.

** OCT 2016 UPDATE **

The post_action directive has been removed from the Nginx documentation and while it still appears to work, usage is inadvisable. Caveat Emptor!

** JAN 2020 UPDATE **

The Mirror Module, introduced in Nginx 1.13.4, essentially replicates the post_action directive.

Upvotes: 5

Roman Vasilyev
Roman Vasilyev

Reputation: 159

You may try this module

https://github.com/theromis/ngx_counter_zone

very close to your request

Upvotes: 1

Related Questions