Skip to main content

Simple Python Varnish socket interface

Project description

A simple python library to administer Varnish over the administration socket. The library can use shared secret authentication. Almost all testing has been done against Varnish 2.1.5.

Note: To use the library with Varnish 2.0.6, set compat = True (Experimental)

This was heavily inspired by Tim Whitlock’s wonderful PHP library (http://github.com/timwhitlock/php-varnish).

Usage:

from varnish_admin_socket import VarnishAdminSocket
varnish = VarnishAdminSocket()

# Optionally set host, port, and secret
# host defaults to 127.0.0.1, port defaults to 6082, secret defaults to False
varnish.host = '127.0.0.1'
varnish.port = 6082
# You probably want to add a newline, this is usually read from a file.
varnish.secret = "123\n"
# To load the secret key from a file set secret_file
varnish.secret_file = '/etc/varnish/secret.txt'
# To use with Varnish 2.0.6 compat = True must be set
varnish.compat = True

# Connect to Varnish
varnish.connect()

# Purge Commands
varnish.purge_url('^/cached')
varnish.purge('req.http.host ~ example.com && req.url ~ ^/cached$')

# Run Stats
print varnish.stats()

# Quit and close the connection
varnish.quit()

More Usage:

from varnish_admin_socket import VarnishAdminSocket
# You may also set server, port, host, and secret on instantiation.
varnish = VarnishAdminSocket(host='varnish.domain.com',secret='123\n')
varnish.connect()
print varnish.stats()
varnish.quit()

# Setting auto_connect will automatically connect(), will run the first command (besides auth),
# and will then .quit()

VarnishAdminSocket(auto_connect=True,secret_file='/etc/varnish/secret.txt').purge_url('.')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

varnish-admin-socket-0.1.1.tar.gz (4.0 kB view details)

Uploaded Source

File details

Details for the file varnish-admin-socket-0.1.1.tar.gz.

File metadata

File hashes

Hashes for varnish-admin-socket-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2a9dab31898cdae4f039f9f75ace843a4d624ae80f2fa394604fa2e6a0179922
MD5 c6899fc882c941701839d24ffdcfafa5
BLAKE2b-256 4509cc142f08250f2fc31824fadbb387d6af2b34e254d0395af919a5e4442ed0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page