{"id":17947556,"url":"https://github.com/inetum-poland/poc-metrics-apps","last_synced_at":"2026-02-15T02:03:41.731Z","repository":{"id":259856163,"uuid":"878326208","full_name":"Inetum-Poland/poc-metrics-apps","owner":"Inetum-Poland","description":"Inetum Poland PoC for metrics apps","archived":false,"fork":false,"pushed_at":"2025-03-13T01:26:12.000Z","size":109,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-04-30T15:27:33.272Z","etag":null,"topics":["dotnet","golang","inetum","logs","metrics","poc","poland","traces"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":false,"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/Inetum-Poland.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":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-25T07:24:27.000Z","updated_at":"2024-12-09T13:48:10.000Z","dependencies_parsed_at":"2024-10-28T12:52:32.677Z","dependency_job_id":"3320486f-4ef2-448d-bf94-3052debbdcb2","html_url":"https://github.com/Inetum-Poland/poc-metrics-apps","commit_stats":null,"previous_names":["inetum-poland/poc-metrics-apps"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inetum-Poland%2Fpoc-metrics-apps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inetum-Poland%2Fpoc-metrics-apps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inetum-Poland%2Fpoc-metrics-apps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inetum-Poland%2Fpoc-metrics-apps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Inetum-Poland","download_url":"https://codeload.github.com/Inetum-Poland/poc-metrics-apps/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251731129,"owners_count":21634513,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["dotnet","golang","inetum","logs","metrics","poc","poland","traces"],"created_at":"2024-10-29T08:05:41.030Z","updated_at":"2026-02-15T02:03:41.694Z","avatar_url":"https://github.com/Inetum-Poland.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PoC - Metrics, Tracing, Logging, and Observability\n\n## Concept\n\nThe main goal of this PoC is to demonstrate how to use OpenTelemetry to collect metrics, tracing, and logging data from different programming languages and frameworks.\n\n### Languages\n\n- GoLang\n- .NET\n- Python\n\n## API Endpoints\n\n### `GET /api/long_run`\n\n- [golang](http://localhost:8080/api/long_run)\n- [dotnet](http://localhost:8081/api/long_run)\n- [python](http://localhost:8082/api/long_run)\n\nThis should call the `longRun()` function.\n\n### `GET /api/short_run`\n\n- [golang](http://localhost:8080/api/short_run)\n- [dotnet](http://localhost:8081/api/short_run)\n- [python](http://localhost:8082/api/short_run)\n\nThis should call the `shortRun()` function.\n\n### `GET /api/database_run`\n\n- [golang](http://localhost:8080/api/database_run)\n- [dotnet](http://localhost:8081/api/database_run)\n- [python](http://localhost:8082/api/database_run)\n\nThis should call the `databaseRun()` function.\n\n### `GET /api/failed_run`\n\n- [golang](http://localhost:8080/api/failed_run)\n- [dotnet](http://localhost:8081/api/failed_run)\n- [python](http://localhost:8082/api/failed_run)\n\nThis should call the `failedRun()` function.\n\n## Main Functions\n\n### `longRun()`\n\nThis function should call the following:\n\n- `add(int a, int b)`\n- `subtract(int a, int b)`\n- `multiply(int a, int b)`\n- `divide(int a, int b)`\n\n### `shortRun()`\n\nThis function should sleep for 100 milliseconds.\n\n### `databaseRun()`\n\nThis function should connect to the database, find all documents, and return the result.\n\n### `failedRun()`\n\nThis function should sleep for 100 milliseconds and then fail.\n\n## Database Schema\n\n| Collection | Field        | Type     | Description                                   |\n| ---------- | ------------ | -------- | --------------------------------------------- |\n| Data       | `_id`        | ObjectId | (internal) Unique identifier for the document |\n| Data       | `created_at` | Time     | (internal) N/a                                |\n| Data       | `updated_at` | Time     | (internal)N/a                                 |\n| Data       | `data`       | int      | Data field                                    |\n\n## Docker Compose and Makefile\n\nTo run the application, you can use the provided `docker-compose` file or `makefile` which include some automation.\n\n```bash\n\u003e make docker-compose\n```\n\n### Docker Compose Links\n\n| Service       | Links                  |\n| ------------- | ---------------------- |\n| Grafana       | http://localhost:3000  |\n| Prometheus    | http://localhost:9090  |\n| Loki          | http://localhost:3100  |\n| Tempo         | http://localhost:3200  |\n| Mongo-Express | http://localhost:27018 |\n\n## Prerequisites\n\n- Docker\n- Docker Compose\n- Make\n\n## Links\n\n- [OpenTelemetry](https://opentelemetry.io/)\n- [OpenTelemetry .NET](https://opentelemetry.io/docs/languages/net/instrumentation/)\n- [OpenTelemetry Go](https://opentelemetry.io/docs/languages/go/instrumentation/)\n- [OpenTelemetry Python](https://opentelemetry.io/docs/languages/python/instrumentation/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finetum-poland%2Fpoc-metrics-apps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finetum-poland%2Fpoc-metrics-apps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finetum-poland%2Fpoc-metrics-apps/lists"}