{"id":22685126,"url":"https://github.com/kartikmehta8/udp-logger","last_synced_at":"2026-05-03T06:39:25.639Z","repository":{"id":264951192,"uuid":"888563868","full_name":"kartikmehta8/UDP-logger","owner":"kartikmehta8","description":"This project implements a lightweight, UDP-based distributed logging system in Node.js.","archived":false,"fork":false,"pushed_at":"2024-11-14T16:03:53.000Z","size":4,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-15T17:02:17.746Z","etag":null,"topics":["node","udp","udp-server"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kartikmehta8.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-11-14T16:03:31.000Z","updated_at":"2024-11-14T16:04:38.000Z","dependencies_parsed_at":"2024-11-27T02:02:34.529Z","dependency_job_id":null,"html_url":"https://github.com/kartikmehta8/UDP-logger","commit_stats":null,"previous_names":["kartikmehta8/udp-logger"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kartikmehta8/UDP-logger","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kartikmehta8%2FUDP-logger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kartikmehta8%2FUDP-logger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kartikmehta8%2FUDP-logger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kartikmehta8%2FUDP-logger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kartikmehta8","download_url":"https://codeload.github.com/kartikmehta8/UDP-logger/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kartikmehta8%2FUDP-logger/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32560912,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: 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":["node","udp","udp-server"],"created_at":"2024-12-09T22:13:15.544Z","updated_at":"2026-05-03T06:39:25.622Z","avatar_url":"https://github.com/kartikmehta8.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Distributed Logger System with UDP\n\nThis project implements a lightweight, UDP-based distributed logging system in Node.js. \nThe logging server aggregates log messages from multiple distributed clients, using UDP to receive logs quickly without HTTP overhead. \nThis project demonstrates SOLID principles and design patterns, with a central logging server that can log to console, files, and future extendable storage options.\n\n## Project Structure\n\n```\ndistributed-logger\n├── server\n│   ├── config\n│   │   └── index.js                # Configuration file for server settings\n│   ├── logger\n│   │   ├── Logger.js               # Logger class implementing the Facade Pattern\n│   │   ├── handlers\n│   │   │   ├── ConsoleHandler.js   # Handler for console output\n│   │   │   ├── FileHandler.js      # Handler for saving logs to files\n│   │   └── parsers\n│   │       └── LogParser.js        # Parses incoming log messages\n│   ├── udpServer.js                # UDP server to receive log messages\n│   └── index.js                    # Main entry point\n├── client\n│   ├── loggerClient.js             # Client script for sending logs via UDP\n├── logs                            # Directory for storing log files\n└── package.json                    # Node.js dependencies and scripts\n```\n\n## Features\n\n- **UDP-Based Logging**: Each client application sends logs to a central server via UDP for minimal latency.\n- **SOLID Design**: Handlers for logging (console, file) follow the Single Responsibility Principle.\n- **Extensible Logging Handlers**: Easily add new handlers (e.g., database, cloud storage).\n\n## Installation\n\n1. Clone the repository:\n\n   ```bash\n   git clone \u003crepository-url\u003e\n   cd distributed-logger\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n## Usage\n\n### 1. Start the Logging Server\n\nTo start the logging server, run:\n\n```bash\nnode server/index.js\n```\n\nThe server listens for UDP messages on the configured port (default: `41234`), as specified in `config/index.js`. It will display received logs in the console and store them in the `logs` directory.\n\n### 2. Run the Client Logger\n\nOpen a new terminal window, then run the client script to send sample log messages:\n\n```bash\nnode client/loggerClient.js\n```\n\nThe client will send various logs (INFO, ERROR, DEBUG) to the server. The server console should display incoming logs and append them to `logs/app.log`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkartikmehta8%2Fudp-logger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkartikmehta8%2Fudp-logger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkartikmehta8%2Fudp-logger/lists"}