We need to port [[ https://github.com/wikimedia/operations-puppet/blob/production/modules/varnish/files/varnishlog.py | modules/varnish/files/varnishlog.py ]] (python bindings for the VSL API using ctypes) to the new VSL API.
python-varnishapi looks like a similar effort which supports Varnish 4.
The following programs depend on varnishlog.py:
- modules/varnish/files/varnishmedia
- modules/varnish/files/varnishprocessor/varnishprocessor.py
- modules/varnish/files/varnishreqstats
- modules/varnish/files/varnishrls
- modules/varnish/files/varnishstatsd
- modules/varnish/files/varnishxcps
Several of these scripts are only relevant to a particular cache role, so we can postpone migrating them until we're ready to migrate that particular role:
Phase 0: Scripts needed for all Varnish roles
Script | Purpose |
---|---|
modules/varnish/files/varnishreqstats | Provides request counts / rates by HTTP method and status code. |
modules/varnish/files/varnishstatsd | Reports backend response timing by backend. |
Phase 1: Scripts needed for text role
Script | Purpose |
---|---|
modules/varnish/files/varnishrls | Tracks stats on ResourceLoader (load.php) requests. |
modules/varnish/files/varnishxcps | Reports protocol and cipher support stats based on X-Connection-Properties header. |
Phase 2: Scripts needed for upload role
Script | Purpose |
---|---|
modules/varnish/files/varnishmedia | Tracks stats on image requests. |
modules/varnish/files/varnishprocessor | Library, currently only used by varnishmedia. |