{"id":33283907,"url":"https://github.com/pprds-public/observability-infrastructure","last_synced_at":"2026-05-16T10:33:45.776Z","repository":{"id":323555827,"uuid":"1092646274","full_name":"pprds-public/observability-infrastructure","owner":"pprds-public","description":"Observability Infrastructure for Local and Cloud Development. A preconfigured stack by PPRD Systems featuring OpenTelemetry, Prometheus, Grafana, Loki, and Tempo for unified observability, monitoring, and analytics across IoT, Healthcare, and Fintech environments.","archived":false,"fork":false,"pushed_at":"2025-11-10T20:16:23.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"develop","last_synced_at":"2025-11-10T21:18:14.718Z","etag":null,"topics":["grafana","logging","loki","metrics","monitoring","observability","opentelemetry","pprd-systems","prometheus","tempo","tracing"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pprds-public.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-09T02:44:53.000Z","updated_at":"2025-11-10T20:16:26.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/pprds-public/observability-infrastructure","commit_stats":null,"previous_names":["pprds-public/observability-infrastructure"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/pprds-public/observability-infrastructure","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pprds-public%2Fobservability-infrastructure","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pprds-public%2Fobservability-infrastructure/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pprds-public%2Fobservability-infrastructure/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pprds-public%2Fobservability-infrastructure/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pprds-public","download_url":"https://codeload.github.com/pprds-public/observability-infrastructure/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pprds-public%2Fobservability-infrastructure/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33098863,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-16T04:41:52.686Z","status":"ssl_error","status_checked_at":"2026-05-16T04:41:52.009Z","response_time":115,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["grafana","logging","loki","metrics","monitoring","observability","opentelemetry","pprd-systems","prometheus","tempo","tracing"],"created_at":"2025-11-17T15:00:32.006Z","updated_at":"2026-05-16T10:33:45.770Z","avatar_url":"https://github.com/pprds-public.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# PPRD Systems: Observability Infrastructure (WIP)\n\n\u003e **Empowering Modern Engineering with Scalable Observability**  \n\u003e *Innovating across Healthcare, IoT, and Fintech domains.*\n\nThis repository provides a **ready-to-run observability stack** for **PPRD Systems projects** and open-source developers who want a quick, unified way to monitor distributed systems.  \nIt bundles **OpenTelemetry**, **Prometheus**, **Grafana**, **Loki**, and **Tempo** allowing you to collect, visualize, and analyze logs, metrics, and traces locally or in the cloud.\n\n\u003e Initially designed for **local deployment** the initial development and testing phases, but it can easily evolve into a **production-grade cloud observability system** suitable for microservices, IoT platforms, Healthcare systems, event-driven architectures, and others.\n\n\n\u003e # ⚠️ Disclaimer\n\u003e This repository is part of an ongoing **research and experimental development projects** conducted by **PPRD Systems, LLC** for educational and exploratory purposes only.\n\u003e  \n\u003e ⚖️ **Liability \u0026 Usage**\nUse of this repository or its components is **strictly at the user’s own risk**.\n**PPRD Systems, LLC** provides all materials **“as is,” without any warranties**, express or implied.\n\u003e \n\u003e © **2025 PPRD Systems, LLC**. All rights reserved\n\n\n## Overview\n\nThis stack enables:\nThis stack aligns with **PPRD Systems’ modular infrastructure strategy**, providing:\n- **Unified observability** with traces, metrics, and logs.\n- **Local telemetry ingestion** using OpenTelemetry Collector from microservices and event-driven systems.\n- **Grafana-based dashboards and visualizations** for real-time visibility. (upcoming)\n- **Flexible extension and Scalable architecture** for both local and enterprise-grade environments monitoring. (upcoming)\n\nOur goal is to help teams **observe everything that matters** — from device telemetry to backend performance without setup friction.\n\n## Stack Components\n\n| Service | Description | Default Port |\n|----------|--------------|---------------|\n| **OpenTelemetry Collector** | Central telemetry collector receiving metrics, logs, and traces from applications. | `4317` |\n| **Prometheus** | Metrics storage and alerting system scraping data from the collector, alerting, and query system. | `9090` |\n| **Loki** | Lightweight, cost-efficient log aggregation system optimized for Grafana. | - |\n| **Tempo** | Distributed tracing backend compatible with OpenTelemetry. | - |\n| **Grafana** | Unified visualization interface connecting all observability sources. | `3000` |\n\n## Docker Compose Setup\n\nThis repository includes a `docker-compose.yml` that orchestrates all services:\n\n```yaml\nservices:\n  otel-collector:\n    image: otel/opentelemetry-collector-contrib:${OTEL_IMAGE_VERSION:-0.133.0}\n    container_name: ${OTEL_CONTAINER_NAME:-otel-collector}\n    command: [\"--config=/etc/otel/collector-config.yml\"]\n    volumes:\n      - ./volumes/otel/collector-config.yaml:/etc/otel/collector-config.yml\n    ports:\n      - \"4317:4317\"\n  \n  loki:\n    image: grafana/loki:${LOKI_IMAGE_VERSION:-3.5.3}\n    container_name: ${LOKI_CONTAINER_NAME:-loki}\n    command: -config.file=/etc/loki/loki-config.yaml\n    volumes:\n      - ./volumes/loki/loki.yaml:/etc/loki/loki-config.yaml\n    depends_on:\n      - otel-collector\n  \n  tempo:\n    image: grafana/tempo:${TEMPO_IMAGE_VERSION:-2.8.2}\n    container_name: ${TEMPO_CONTAINER_NAME:-tempo}\n    command: [\"-config.file=/etc/tempo.yaml\"]\n    volumes:\n      - ./volumes/tempo/tempo.yaml:/etc/tempo.yaml\n    depends_on:\n      - otel-collector\n  \n  prometheus:\n    image: prom/prometheus:${PROMETHEUS_IMAGE_VERSION:-v3.5.0}\n    container_name: ${PROMETHEUS_CONTAINER_NAME:-prometheus}\n    volumes:\n      - ./volume/prometheus/prometheus.yaml:/etc/prometheus/prometheus.yaml\n    command:\n      - --config.file=/etc/prometheus/prometheus.yaml\n    ports:\n      - \"9090:9090\"\n    depends_on:\n      - otel-collector\n  \n  grafana:\n    image: grafana/grafana:${GRAFANA_IMAGE_VERSION:-12.0}\n    container_name: ${GRAFANA_CONTAINER_NAME:-grafana}\n    volumes:\n      - ./volumes/grafana/datasources:/etc/grafana/provisioning/datasources\n      - ./volumes/grafana/dashboards:/etc/grafana/provisioning/dashboards\n    ports:\n      - \"3000:3000\"\n    environment:\n      - GF_SECURITY_ADMIN_USER=admin\n      - GF_SECURITY_ADMIN_PASSWORD=admin\n    depends_on:\n      - loki\n      - prometheus\n      - tempo\n```\n\n## Getting Started\n\n### 1. Clone the Repository\n```bash\ngit clone https://github.com/pprds-public/observability-infrastructure.git\ncd observability-infrastructure\n```\n\n### 2. Configure Environment Variables\nYou can override container names or image versions via a `.env` file:\n```bash\nOTEL_IMAGE_VERSION=0.133.0\nOTEL_CONTAINER_NAME=otel-collector\nLOKI_IMAGE_VERSION=3.5.3\nLOKI_CONTAINER_NAME=loki\nTEMPO_IMAGE_VERSION=2.8.2\nTEMPO_CONTAINER_NAME=tempo\nPROMETHEUS_IMAGE_VERSION=v3.5.0\nPROMETHEUS_CONTAINER_NAME=prometheus\nGRAFANA_IMAGE_VERSION=12.0\nGRAFANA_CONTAINER_NAME=grafana\n```\n\n### 3. Start the Observability Stack\n```bash\ndocker compose up -d\n```\n\n### 4. Access Dashboards\n- **Grafana:** [http://localhost:3000](http://localhost:3000)  \n  Login: `admin / admin`  \n- **Prometheus:** [http://localhost:9090](http://localhost:9090)\n\n## Directory Structure\n\n```\nobservability-infrastructure/\n├── docker-compose.yml\n└── volumes/\n    ├── grafana/\n    │   ├── datasources/\n    │   └── dashboards/\n    ├── loki/\n    ├── otel/\n    ├── prometheus/\n    └── tempo/\n```\n\n## Future Plans\n\n- Add **Kubernetes manifests** or **Helm charts**.\n- Integrate with **cloud-managed telemetry pipelines**.\n- Provide **Terraform templates** for provisioning.\n- Extend **Grafana dashboards** \n\n## About PPRD Systems\n\nPPRD Systems is an engineering startup specializing in **IoT, Healthcare, and Fintech software solutions**, combining **real-time data pipelines**, **AI integration**, and **cloud-native architecture**.\n\nWe focus on:\n- Scalable data processing with Kafka, Flink, and Pekko.\n- Predictive analytics and intelligent automation.\n- Modular, event-driven system design.\n\n**Website:** Coming Soon  \n**LinkedIn:** [PPRD Systems](https://www.linkedin.com/company/pprdsystems)  \n**Contact:** contact@pprdsystems.com\n\n## License\nThis project is licensed under the [Apache License 2.0](LICENSE).\n\n\n\u003e # ⚠️ Disclaimer\n\u003e This repository is part of an ongoing **research and experimental development projects** conducted by **PPRD Systems, LLC** for educational and exploratory purposes only.\n\u003e  \n\u003e ⚖️ **Liability \u0026 Usage**\nUse of this repository or its components is **strictly at the user’s own risk**.\n**PPRD Systems, LLC** provides all materials **“as is,” without any warranties**, express or implied.\n\u003e \n\u003e © **2025 PPRD Systems, LLC**. All rights reserved","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpprds-public%2Fobservability-infrastructure","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpprds-public%2Fobservability-infrastructure","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpprds-public%2Fobservability-infrastructure/lists"}