Skip to main content

dLogs - one command installer/bootstrapper for your logging & monitoring stack

Project description

dLogs: The "1-Click" Observability Stack

PyPI version Docker Image

Monitor Everything. Host systems, Docker containers, Nvidia GPUs, and app logs. All in one place.

dLogs is a pre-configured, high-performance observability stack built on top of the industry-standard LGTM stack (Loki, Grafana, Telegraf/Promtail, Monitoring/Prometheus), enhanced with automatic dashboard provisioning and Python integration.


🚀 Features

  • ⚡ Instant Setup: Install via pip or Docker.
  • 🖥️ OS-Aware Host Visibility: CPU, RAM, disk, and network metrics across Windows, Linux, and fallback environments.
  • 🐳 Docker Stats: CPU/Memory/Network per container (powered by cAdvisor).
  • 🎮 Nvidia GPU Monitoring: realtime usage, temperatures, and power draw via host-side nvidia-smi or Docker's Nvidia runtime.
  • 📜 Centralized Logging: Logs from your Python apps + Docker logs in one queryable UI.
  • 🔔 Alerts: Built-in ntfy server for push notifications.
  • 🐍 Python SDK: dlogs wrapper to start logging in 2 lines of code.

💿 Installation

Option 1: Python (Recommended)

Install using pip (or pipx for isolation):

pip install motidivya-dlogs

Then initialize and start the stack:

# Create a folder for your stack
mkdir my-stack
cd my-stack

# Initialize configuration
dlogs init .

# Start the stack
dlogs up .

dlogs init auto-detects the host OS and writes .env with DLOGS_LOG_DIR for Docker Compose:

  • Windows: C:/Logs
  • Linux/macOS: ~/dlogs

If you want a custom path, set DLOGS_LOG_DIR yourself before running dlogs up ..

GPU monitoring is auto-enabled only when an Nvidia runtime is detected. You can force it on or off with DLOGS_ENABLE_GPU=1 or DLOGS_ENABLE_GPU=0.

Option 2: Docker

Run the CLI container directly:

docker run --rm -it \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v $(pwd):/app/work \
  divyesh1099/dlogs up /app/work

Option 3: Installer Script (Windows)

iwr -useb https://raw.githubusercontent.com/divyesh1099/dLogs/main/install_dlogs.ps1 | iex

🐍 Python Integration (dLogs SDK)

The dlogs package includes a zero-dependency wrapper to send logs directly to this stack.

Usage:

from dlogs import dLogs

# Initialize (Auto-detects the right log dir for your OS)
logger = dLogs("my_super_app")

# Log normal info (Shows in Loki/Grafana)
logger.log("Application started successfully.")

# Log errors (Highlights in Red)
try:
    1 / 0
except Exception as e:
    logger.alert(f"Critical math failure: {e}")

How it works:

  • It writes structured JSON logs to C:/Logs/app_name.json on Windows or ~/dlogs/app_name.json on Linux/macOS.
  • You can override the location with DLOGS_LOG_DIR.
  • Promtail (running in Docker) watches that folder.
  • It scrapes the new lines instantly and sends them to Loki.
  • You view them in Grafana Explore ({job="varlogs"} |= "my_super_app").

📊 Dashboards Guide

Grafana comes pre-provisioned. Go to http://localhost:3000/dashboards (admin/admin) and open the dLogs folder.

1. 🖥️ Host System Metrics

  • Real-time CPU/RAM: Total system usage.
  • Network I/O: Upload/Download speeds.
  • Disk Usage: Filesystem usage for the active host.
  • Requirements: Windows uses windows_exporter on port 9182, Linux uses the built-in dLogs host exporter on port 9100, and other OSes fall back to the bundled node-exporter container.

2. 🐳 Docker Containers

  • CPU/Memory per Container: identify resource hogs.
  • Network Traffic: See which container is chatting the most.
  • Requirement: cadvisor container running.

3. 🟢 Nvidia GPU

  • Usage %: Graphics load.
  • VRAM: Memory allocation.
  • Temp/Power: Thermal monitoring.
  • Requirement: Nvidia drivers plus either host-side nvidia-smi or a Docker Nvidia runtime.

4. 🪵 Loki Logs

  • Search Engine: Query logs using LogQL.
  • Filters: Filter by app name, log level (INFO/ERROR).
  • Live Tail: See logs as they happen.

🛠️ Architecture

The stack runs completely locally using Docker Compose:

Component Port Purpose
Grafana 3000 The Dashboard UI. Access via http://localhost:3000.
Prometheus 9090 Time-series database for metrics.
Loki 3100 Log aggregation system (like Splunk/ELK but lighter).
Promtail Log collector. Watches log folder and sends to Loki.
cAdvisor 8090 Container usage metrics (Google's official tool).
GPU Metrics 9835 Host-side Nvidia exporter or Docker nvidia_gpu_exporter, depending on runtime support.
Host Metrics 9100 / 9182 Native Linux exporter on 9100, windows_exporter on 9182, or node-exporter fallback.
Ntfy 8080 Notification server (publish/subscribe).

Prometheus target files under .dlogs-state/prometheus/ are generated by dlogs up to match the active OS/runtime.


Moti❤️

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

motidivya_dlogs-0.1.7.tar.gz (26.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

motidivya_dlogs-0.1.7-py3-none-any.whl (30.2 kB view details)

Uploaded Python 3

File details

Details for the file motidivya_dlogs-0.1.7.tar.gz.

File metadata

  • Download URL: motidivya_dlogs-0.1.7.tar.gz
  • Upload date:
  • Size: 26.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for motidivya_dlogs-0.1.7.tar.gz
Algorithm Hash digest
SHA256 e0997ac4ce4b662b01591b17756e64cd4d3514ef0d3310a468e09928bc6f41b6
MD5 0a5687bca4dd188b8ba83d4c4737e1c2
BLAKE2b-256 c46d37ba032003bcdad312d9efbfe472ce102da919dd2aaf93ad65ed23d10ef9

See more details on using hashes here.

File details

Details for the file motidivya_dlogs-0.1.7-py3-none-any.whl.

File metadata

File hashes

Hashes for motidivya_dlogs-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 2d540530224d5d78d47f09098f5067f4b3096c99ccb23ba8babc1ffd5f0b3e03
MD5 06576c47d6f9ab62588655f0b5f444fe
BLAKE2b-256 9c02616f87accdd2bbc86bb77e8b282daff4787200217d0455777f3b63b36bfd

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