A simple and non-blocking Python package for sending custom metrics to Watchlog.
Project description
watchlog-python
A lightweight, non-blocking Python client for sending custom metrics to the Watchlog monitoring platform.
🚀 Installation
Install the package using pip:
pip install watchlog-python
📦 Usage
1. Import the Watchlog class
from watchlog import Watchlog
2. Create an instance of Watchlog
watchlog_instance = Watchlog()
3. Send metrics using simple method calls
# Increment a counter
watchlog_instance.increment('page_views', 10)
# Decrement a counter
watchlog_instance.decrement('items_in_cart', 2)
# Set a gauge value
watchlog_instance.gauge('current_temperature', 22.5)
# Set a percentage value (0 to 100)
watchlog_instance.percentage('completion_rate', 85)
# Log system byte metric (e.g., memory usage in bytes)
watchlog_instance.systembyte('memory_usage', 1024)
All operations are performed asynchronously and silently, ensuring zero interruption to your main application.
🌐 Example Usage in a Django View
# views.py
from django.http import HttpResponse
from watchlog import Watchlog
watchlog_instance = Watchlog()
def some_view(request):
watchlog_instance.increment('view_hits')
return HttpResponse("This is a view that increments a metric.")
✅ Features
- ⚡️ Non-blocking & thread-based HTTP request
- 🛡️ No logging, printing, or exception leaks
- 🔐 Safe and isolated from your main application flow
- 🧩 Easy to integrate with any Python web framework
📄 License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
watchlog_python-0.2.4.tar.gz
(4.0 kB
view details)
File details
Details for the file watchlog_python-0.2.4.tar.gz.
File metadata
- Download URL: watchlog_python-0.2.4.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34b0a740a9f260e83b0a1ebebcb7a287051d42b22c6ae897b2f8091a02bd1324
|
|
| MD5 |
7c3d4ce76ba3e64cf63b749f2e68c2a8
|
|
| BLAKE2b-256 |
14ac63d61a1d078a325d230080664210e1df1e1a5a2951a472410437cb34b835
|