{"id":25733629,"url":"https://github.com/mojski/otello","last_synced_at":"2026-05-14T21:05:30.089Z","repository":{"id":268565740,"uuid":"866611062","full_name":"mojski/otello","owner":"mojski","description":"Otello example .NET integration with OpenTelemetry collector","archived":false,"fork":false,"pushed_at":"2025-02-25T19:15:17.000Z","size":155,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-24T10:56:14.261Z","etag":null,"topics":["asp-net-core","dotnet-aspire","loki","opentelemetry","seq","tempo"],"latest_commit_sha":null,"homepage":"","language":"C#","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/mojski.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-10-02T15:09:00.000Z","updated_at":"2025-02-25T19:15:21.000Z","dependencies_parsed_at":"2024-12-17T15:27:45.986Z","dependency_job_id":"c729ea27-0bbe-4c49-b46c-f6b3983ad282","html_url":"https://github.com/mojski/otello","commit_stats":null,"previous_names":["mojski/otello"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mojski/otello","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mojski%2Fotello","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mojski%2Fotello/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mojski%2Fotello/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mojski%2Fotello/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mojski","download_url":"https://codeload.github.com/mojski/otello/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mojski%2Fotello/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33043275,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"online","status_checked_at":"2026-05-14T02:00:06.663Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["asp-net-core","dotnet-aspire","loki","opentelemetry","seq","tempo"],"created_at":"2025-02-26T04:22:17.421Z","updated_at":"2026-05-14T21:05:30.071Z","avatar_url":"https://github.com/mojski.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Otello web api\n\n.Net poc app showing how to use open telemetry colector and seq. In this scenario server app is monitoring vendor angostic. App push logs to collector, then collector push data to seq (or other services in future).\n\n```mermaid\ngraph TD\n    Serwer[\"Server\"] --\"grpc 4317\"--\u003e OTEL[\"Otel Collector\"]\n    OTEL --\"HTTP 5341\"--\u003e Seq\n    OTEL --\"grpc 18889\"--\u003e Aspire\n    OTEL --\"HTTP 3100\"--\u003e node_1\n    OTEL --\"grpc 4317\"--\u003e node_2\n\n    node_1[\"Loki\"]\n    node_2[\"Tempo\"]\n    Seq[\"Seq\"]\n    Aspire[\"Aspire\"]\n```\n\nSteps to run\n\n- stop local windows seq if installed or other container that use port 5341 - running other seq instance \n\n- run docker-compose (docker compose up -d) (from infra directory)\n\n- run application, you should see starting logs at localhost:5341 seq UI. \n\n- hit http://localhost:5080/api/test (GET) to trigger error log\n\n## Seq\n\n![alt text](/doc/readme_assets/seq.png)\n\n## .NET Aspire\n![alt text](/doc/readme_assets/asp.png)\n\n## Grafana Loki\nquery used:\n```\n{service_name=\"Otello\"}\n```\n![alt text](/doc/readme_assets/gl.png)\n\n## Grafana Tempo\nquery used:\n\n```\n{resource.service.name=\"Otello\" \u0026\u0026 name=\"GET /api/test\"} \n```\n![alt text](/doc/readme_assets/tempo.png)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmojski%2Fotello","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmojski%2Fotello","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmojski%2Fotello/lists"}