{"id":24641164,"url":"https://github.com/elixir-cloud-aai/cloud-telemetry","last_synced_at":"2026-01-27T17:02:31.547Z","repository":{"id":242543896,"uuid":"807342609","full_name":"elixir-cloud-aai/cloud-telemetry","owner":"elixir-cloud-aai","description":null,"archived":false,"fork":false,"pushed_at":"2024-09-03T18:32:13.000Z","size":100,"stargazers_count":2,"open_issues_count":2,"forks_count":1,"subscribers_count":25,"default_branch":"main","last_synced_at":"2025-04-06T04:02:04.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Makefile","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/elixir-cloud-aai.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}},"created_at":"2024-05-28T23:19:54.000Z","updated_at":"2024-09-02T09:31:54.000Z","dependencies_parsed_at":"2024-06-03T17:37:28.011Z","dependency_job_id":"23bbcd8e-10aa-4ec6-906d-ffa427d4d844","html_url":"https://github.com/elixir-cloud-aai/cloud-telemetry","commit_stats":null,"previous_names":["elixir-cloud-aai/cloud-telemetry"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/elixir-cloud-aai/cloud-telemetry","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-cloud-aai%2Fcloud-telemetry","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-cloud-aai%2Fcloud-telemetry/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-cloud-aai%2Fcloud-telemetry/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-cloud-aai%2Fcloud-telemetry/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elixir-cloud-aai","download_url":"https://codeload.github.com/elixir-cloud-aai/cloud-telemetry/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-cloud-aai%2Fcloud-telemetry/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28816571,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T12:25:15.069Z","status":"ssl_error","status_checked_at":"2026-01-27T12:25:05.297Z","response_time":168,"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":[],"created_at":"2025-01-25T12:12:30.948Z","updated_at":"2026-01-27T17:02:31.529Z","avatar_url":"https://github.com/elixir-cloud-aai.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://bandit.readthedocs.io/en/latest/)\n[![codecov](https://codecov.io/gh/elixir-cloud-aai/cloud-telemetry/branch/main/graph/badge.svg)](https://codecov.io/gh/elixir-cloud-aai/cloud-telemetry)\n[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)][code-of-conduct]\n[![Documentation Status](https://readthedocs.org/projects/cloud_telemetry/badge/?version=latest)](https://cloud_telemetry.readthedocs.io/en/latest/?badge=latest)\n[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](./LICENSE)\n[![Python 3.11](https://img.shields.io/badge/python-3.11-blue.svg)](https://www.python.org/)\n[![GitHub contributors](https://img.shields.io/github/contributors/elixir-cloud-aai/cloud-telemetry)](https://github.com/elixir-cloud-aai/cloud-telemetry/graphs/contributors)\n[![Ruff](https://img.shields.io/badge/linter%20\u0026%20formatter-ruff-000000.svg)](https://docs.astral.sh/ruff/)\n[![Safety](https://img.shields.io/badge/security-safety-orange.svg)](https://safetycli.com/product/safety-cli)\n\n# Integrating Telemetry into GA4GH API-powered federated microservice networks\n\nThe Global Alliance for Genomics and Health (GA4GH) defines various web APIs for\nfederated computing solutions that are well suited for the microservice\narchitecture pattern. The ELIXIR Cloud \u0026 AAI Driver Project of the GA4GH is\nactively developing a GA4GH API-powered cloud environment based on this\nprinciple. The GA4GH Cloud Telemetry Project aims to provide a starting point\nfor instrumentation and tracing of GA4GH Cloud Components / Microservices.\n\nIn this project, you would design and implement a solution that adds rich\ntelemetry support to the ELIXIR Cloud federated service. The primary goal would\nbe deployment artifacts (e.g., Terraform/OpenTofu) that deploy both our core\nservices, as well as telemetry services at our fragmented compute centers at\nmultiple locations (Kubernetes, OpenShift, OpenStack/VMs), as well as on one or\nmore commercial cloud providers. An ideal solution would be easily extensible to\napply to GA4GH-powered clouds in general, i.e., proposals that use abstractions\noffered by GA4GH APIs, where applicable/reasonable, are preferred.\n\nA simple telemetry sidecar deployment might be a reasonable aim for a short\nproject, whereas a generic solution with various connections to specific GA4GH\nAPIs (e.g., integration with the Service Info / Service Registry API) might be\nsuitable for a medium or even long project. Note that the exclusive use of free\nand open source tooling for any used dependencies (e.g., OpenTelemetry) is a\nrequirement.\n\n## Table of Contents\n\n- [Basic Usage](#basic-usage)\n- [Installation](#installation)\n- [Development](#development)\n- [Contributing](#contributing)\n- [Code of Conduct](#code-of-conduct)\n- [Versioning](#versioning)\n- [License](#license)\n- [Contact](#contact)\n\n## Basic Usage\n\n## Installation\n\n## Development\n\nFor ease of use, certain scripts have been abbreviated in `Makefile`, make sure\nthat you have installed the dependencies before running the commands.\n\n\u003e **Note**: `make` commands are only available for Unix-based systems.\n\nTo view the commands available, run:\n\n```sh\nmake\n```\n\nHere are certain commands that you might find useful:\n\n- Make a virtual environment\n\n```sh\nmake v\n```\n\n- Install all dependencies including optional dependencies\n\n```sh\nmake i\n```\n\n\u003e **Note**: This project uses optional dependency groups such as `types`,\n\u003e `code_quality`, `docs`, `vulnerability`, `test`, and `misc`. To install stubs\n\u003e or types for the dependencies, you **must** use the following command:\n\u003e\n\u003e ```sh\n\u003e poetry add types-foo --group types\n\u003e ```\n\u003e\n\u003e Replace `types-foo` with the name of the package for the types. All runtime\n\u003e dependencies should be added to the `default` group. For example, to install\n\u003e `requests` and its type stubs, run:\n\u003e\n\u003e ```sh\n\u003e poetry add requests\n\u003e poetry add types-requests --group types\n\u003e ```\n\u003e\n\u003e This ensures that the type checker functions correctly.\n\u003e\n\u003e **Note**: Since the dependencies are segregated into groups, if you add a new\n\u003e group make sure to add it in `make install` command in [Makefile](Makefile).\n\n- Run tests\n\n```sh\nmake t\n```\n\n- Run linter, formatter and spell checker\n\n```sh\nmake fl\n```\n\n- Build the documentation\n\n```sh\nmake d\n```\n\n\u003e **Note**: If you make changes to the code, make sure to generate and push the\n\u003e documentation using above command, else the documentation check CI will fail.\n\u003e Do NOT edit auto-generated documentation manually.\n\n- Run type checker\n\n```sh\nmake tc\n```\n\n- Run all pre-commit checks\n\n```sh\nmake pc\n```\n\n- Update the cookiecutter template\n\n```sh\nmake u\n```\n\n\u003e **Note**: This is not the complete list of commands, run `make` to find out if\n\u003e more have been added.\n\n## Contributing\n\nThis project is a community effort and lives off _your_ contributions, be it in\nthe form of bug reports, feature requests, discussions, fixes or any other form\nof contribution!\n\nPlease refer to the guidelines available at [`CONTRIBUTING.md`][contributing] if\nyou are interested in contributing.\n\n## Code of Conduct\n\nWe kindly request all contributors to abide by our\n[organization's Code of Conduct][code-of-conduct]. Please also refer to this\ndocument if you want to report an incident with respect to conduct in our\ncommunity. Thank you for your cooperation.\n\n## Versioning\n\nThe project adopts the [semantic versioning][semver] scheme for versioning.\nCurrently the software is in a pre-release stage, so changes to the API,\nincluding breaking changes, may occur at any time without further notice.\n\n## License\n\nThis project is distributed under the [Apache License 2.0][badge-license-url], a\ncopy of which is also available in [`LICENSE`][license].\n\n## Contact\n\nThe project is maintained by [ELIXIR Cloud \u0026 AAI][elixir-cloud-aai], a Driver\nProject of the [Global Alliance for Genomics and Health (GA4GH)][ga4gh], under\nthe umbrella of the [ELIXIR] [Compute Platform][elixir-compute].\n\nTo get in touch with us, please use one of the following routes:\n\n- For filing bug reports, feature requests or other code-related issues, please\n  make use of the project's [issue tracker][issue-tracker].\n- For private/personal issues, more involved communication, or if you would like\n  to join our team as a regular contributor, you can either join our\n  [chat board][badge-chat-url] or [email] the community leaders.\n- [Project Board](https://github.com/orgs/elixir-cloud-aai/projects/21)\n- Communication: ELIXIR Cloud Slack Channel, Topic #telemetry\n\n[![logo-elixir]][elixir] [![logo-elixir-cloud-aai]][elixir-cloud-aai]\n\n[badge-chat-url]: https://join.slack.com/t/elixir-cloud/shared_invite/enQtNzA3NTQ5Mzg2NjQ3LTZjZGI1OGQ5ZTRiOTRkY2ExMGUxNmQyODAxMDdjM2EyZDQ1YWM0ZGFjOTJhNzg5NjE0YmJiZTZhZDVhOWE4MWM\n[badge-license-url]: http://www.apache.org/licenses/LICENSE-2.0\n[code-of-conduct]: https://elixir-cloud-aai.github.io/about/code-of-conduct/\n[contributing]: https://elixir-cloud-aai.github.io/guides/guide-contributor/\n[elixir]: https://elixir-europe.org/\n[elixir-cloud-aai]: https://elixir-cloud.dcc.sib.swiss/\n[elixir-compute]: https://elixir-europe.org/platforms/compute\n[email]: mailto:cloud-service@elixir-europe.org\n[ga4gh]: https://ga4gh.org/\n[issue-tracker]: https://github.com/elixir-cloud-aai/cloud-telemetry/issues\n[license]: LICENSE\n[logo-elixir]: images/logo-elixir.svg\n[logo-elixir-cloud-aai]: images/logo-elixir-cloud-aai.svg\n[semver]: https://semver.org/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felixir-cloud-aai%2Fcloud-telemetry","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Felixir-cloud-aai%2Fcloud-telemetry","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felixir-cloud-aai%2Fcloud-telemetry/lists"}