{"id":20578075,"url":"https://github.com/timeplus-io/proton-grafana-source","last_synced_at":"2026-04-21T01:01:42.000Z","repository":{"id":199836505,"uuid":"697988753","full_name":"timeplus-io/proton-grafana-source","owner":"timeplus-io","description":"Grafana data source plugin for Timeplus","archived":false,"fork":false,"pushed_at":"2025-12-12T21:19:35.000Z","size":23850,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-12-13T05:08:00.776Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","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/timeplus-io.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2023-09-28T22:35:24.000Z","updated_at":"2025-12-12T21:11:57.000Z","dependencies_parsed_at":"2024-01-13T04:56:33.068Z","dependency_job_id":"27c42138-b35e-4d58-86ba-e75eff661366","html_url":"https://github.com/timeplus-io/proton-grafana-source","commit_stats":null,"previous_names":["timeplus-io/proton-grafana-source"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/timeplus-io/proton-grafana-source","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timeplus-io%2Fproton-grafana-source","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timeplus-io%2Fproton-grafana-source/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timeplus-io%2Fproton-grafana-source/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timeplus-io%2Fproton-grafana-source/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/timeplus-io","download_url":"https://codeload.github.com/timeplus-io/proton-grafana-source/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timeplus-io%2Fproton-grafana-source/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32072323,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T21:26:33.338Z","status":"ssl_error","status_checked_at":"2026-04-20T21:26:22.081Z","response_time":94,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":[],"created_at":"2024-11-16T06:10:21.240Z","updated_at":"2026-04-21T01:01:41.933Z","avatar_url":"https://github.com/timeplus-io.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Timeplus Grafana Datasource\n\nGrafana data source plugin to connect to Timeplus and visualize streaming or batch queries.\n\n## Overview / Introduction\n\nAs the core engine of [Timeplus Enterprise](https://timeplus.com), [Proton](https://github.com/timeplus-io/proton) is a single binary for streaming analytics. It helps data engineers and platform engineers solve complex real-time analytics use cases.\n\n## Requirements\n\nGrafana v11.3 or above (older versions may work but not verified)\n\nA running Timeplus Proton or Timeplus Enterprise instance with TCP port 8463 (for database connection) and HTTP port 3218 (for query analazyer REST API).\n\n## Getting Started\n\n### Use the pre-built Docker Compose\n\nThe [docker-compose.yaml](docker-compose.yaml) in this folder ships a Grafana container, with the proton plugin pre-installed, as well as a data generator.\n\nYou start it with `docker compose up` and go to http://localhost:3000 to view the Carsharing dashboard.\n\nA data source for Timeplus is created automatically.\n\n### Query Variables\n\nYou can define dashboard variables with this data source. Please make sure turning off the streaming query mode in the SQL to populate the variable values, and only return 1 or 2 columns. When there is 1 column returned, it will be set as both value and label. If there are 2 columns, the first column will be set as value and the second column as the label. You can also refer to `__from` and `__to` variables in the SQL to get the time range of the dashboard, e.g.:\n\n```sql\nSELECT distinct product_id FROM table(coinbase)  where _tp_time \u003c to_datetime($__to/1000) and _tp_time \u003e to_datetime($__from/1000)\n```\n\n## Development\n\n### Backend\n\n1. Update [Grafana plugin SDK for Go](https://grafana.com/docs/grafana/latest/developers/plugins/backend/grafana-plugin-sdk-for-go/) dependency to the latest minor version:\n\n   ```bash\n   go get -u github.com/grafana/grafana-plugin-sdk-go\n   go mod tidy\n   ```\n\n2. Build backend plugin binaries for Linux, Windows and Darwin:\n\n   ```bash\n   brew install mage\n   mage -v\n   ```\n\n   mage build:linuxARM will fail, which is okay. Only 64bit OS are supported.\n\n3. List all available Mage targets for additional commands:\n\n   ```bash\n   mage -l\n   ```\n\n### Frontend\n\n1. Install dependencies\n\n   ```bash\n   npm install\n   ```\n\n2. Build plugin in development mode and run in watch mode (Ctrl+C to stop)\n\n   ```bash\n   npm run dev\n   ```\n\n3. Build plugin in production mode\n\n   ```bash\n   npm run build\n   ```\n\n4. Sign the plugin\n\n   ```bash\n   export GRAFANA_ACCESS_POLICY_TOKEN=\u003cYOUR_ACCESS_POLICY_TOKEN\u003e\n   npm run sign\n   ```\n\n5. Distribute the plugin\n   ```bash\n   make package\n   ```\n\n## Learn more\n\nBelow you can find source code for existing app plugins and other related documentation.\n\n- [Basic data source plugin example](https://github.com/grafana/grafana-plugin-examples/tree/master/examples/datasource-basic#readme)\n- [`plugin.json` documentation](https://grafana.com/developers/plugin-tools/reference-plugin-json)\n- [How to sign a plugin?](https://grafana.com/docs/grafana/latest/developers/plugins/sign-a-plugin/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimeplus-io%2Fproton-grafana-source","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftimeplus-io%2Fproton-grafana-source","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimeplus-io%2Fproton-grafana-source/lists"}