{"id":29973824,"url":"https://github.com/seconddim/grafana-proxy","last_synced_at":"2025-09-01T12:08:14.177Z","repository":{"id":303700595,"uuid":"1015943051","full_name":"SecondDim/grafana-proxy","owner":"SecondDim","description":"This is a simple Rust-based proxy server that receives webhook notifications from Grafana and forwards them to a specified Microsoft Power Automate webhook URL.","archived":false,"fork":false,"pushed_at":"2025-07-09T00:35:35.000Z","size":26,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-04T07:57:02.001Z","etag":null,"topics":["grafana","microsoft","proxy","rust","teams","webhook"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SecondDim.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,"zenodo":null}},"created_at":"2025-07-08T09:02:37.000Z","updated_at":"2025-07-09T00:30:16.000Z","dependencies_parsed_at":"2025-07-09T01:30:13.491Z","dependency_job_id":"51126ee3-56e7-4823-8769-999505b1686f","html_url":"https://github.com/SecondDim/grafana-proxy","commit_stats":null,"previous_names":["seconddim/grafana-proxy"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/SecondDim/grafana-proxy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SecondDim%2Fgrafana-proxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SecondDim%2Fgrafana-proxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SecondDim%2Fgrafana-proxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SecondDim%2Fgrafana-proxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SecondDim","download_url":"https://codeload.github.com/SecondDim/grafana-proxy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SecondDim%2Fgrafana-proxy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122120,"owners_count":25049539,"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","status":"online","status_checked_at":"2025-09-01T02:00:09.058Z","response_time":120,"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":["grafana","microsoft","proxy","rust","teams","webhook"],"created_at":"2025-08-04T07:01:19.374Z","updated_at":"2025-09-01T12:08:14.144Z","avatar_url":"https://github.com/SecondDim.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Grafana to Power Automate Webhook Proxy\n\nThis is a simple Rust-based proxy server that receives webhook notifications from Grafana and forwards them to a specified Microsoft Power Automate webhook URL.\n\n## Features\n\n* Forwards Grafana alerts to Microsoft Power Automate(Teams).\n* Configurable Power Automate webhook URL via command-line arguments.\n* Accepts invalid SSL certificates for easier testing in development environments.\n* Cross-platform compilation support.\n\n## Prerequisites\n\n* Rust programming language and Cargo package manager. You can install them from [rust-lang.org](https://www.rust-lang.org/tools/install).\n\n## Development Environment\n\n* **Rust Version:** `rustc 1.88.0 (6b00bc388 2025-06-23)`\n* **Cargo Version:** `cargo 1.88.0 (873a06493 2025-05-10)`\n* **Operating System:** `Windows`\n\n## Installation \u0026 Building\n\n1. **Clone the repository:**\n\n    ```bash\n    git clone https://github.com/SecondDim/grafana-proxy.git\n    cd grafana-proxy\n    ```\n\n1. **Build for development:**\n\n    ```bash\n    cargo build\n    ```\n\n1. **Build for release:**\n\n    ```bash\n    cargo build --release\n    ```\n\n1. **Build for a specific target (e.g., x86_64 Linux):**\n\n    ```bash\n    rustup target add x86_64-unknown-linux-gnu\n    cargo build --release --target=x86_64-unknown-linux-gnu\n    ```\n\n## Usage\n\nTo run the proxy, you need to provide the Power Automate webhook URL as a command-line argument. You can also optionally specify the binding IP address and port.\n\n```bash\n./target/release/grafana-proxy --webhook-url \u003cyour-power-automate-webhook-url\u003e [--bind-ip \u003cip-address\u003e] [--bind-port \u003cport\u003e]\n```\n\nBy default, the server will start on `http://0.0.0.0:3080`.\n\n### Example\n\n```bash\n# Run with default IP and port\n./target/release/grafana-proxy --webhook-url \"https://prod-123.westeurope.logic.azure.com:443/workflows/...\"\n\n# Run with a specific IP and port\n./target/release/grafana-proxy --webhook-url \"https://prod-123.westeurope.logic.azure.com:443/workflows/...\" --bind-ip 127.0.0.1 --bind-port 8888\n```\n\nThen, configure your Grafana notification channel to send webhooks to `http://\u003cyour-server-ip\u003e:\u003cport\u003e/grafana-webhook`.\n\n## License\n\nThis project is licensed under the MIT License.\n\n---\n\n## Grafana 到 Power Automate Webhook 代理\n\n這是一個基於 Rust 的簡易代理伺服器，可接收來自 Grafana 的 Webhook 通知，並將其轉發到指定的 Microsoft Power Automate Webhook URL\n\n## 功能\n\n* 將 Grafana 警示轉發到 Microsoft Power Automate(Teams)。\n* 可透過命令列參數設定 Power Automate Webhook URL。\n* 接受無效的 SSL 憑證，以便在開發環境中輕鬆測試。\n* 支援跨平台編譯。\n\n## 先決條件\n\n* Rust 程式語言和 Cargo 套件管理器。您可以從 [rust-lang.org](https://www.rust-lang.org/tools/install) 安裝它們。\n\n## 開發環境\n\n* **Rust 版本:** `rustc 1.88.0 (6b00bc388 2025-06-23)`\n* **Cargo 版本:** `cargo 1.88.0 (873a06493 2025-05-10)`\n* **作業系統:** `Windows`\n\n## 安裝與建置\n\n1. **複製儲存庫：**\n\n    ```bash\n    git clone https://github.com/SecondDim/grafana-proxy.git\n    cd grafana-proxy\n    ```\n\n1. **開發建置：**\n\n    ```bash\n    cargo build\n    ```\n\n1. **發行建置：**\n\n    ```bash\n    cargo build --release\n    ```\n\n1. **針對特定目標進行建置 (例如 x86_64 Linux)：**\n\n    ```bash\n    rustup target add x86_64-unknown-linux-gnu\n    cargo build --release --target=x86_64-unknown-linux-gnu\n    ```\n\n## 使用方式\n\n若要執行代理，您需要提供 Power Automate Webhook URL 作為命令列參數。您也可以選擇性地指定綁定的 IP 位址和埠號。\n\n```bash\n./target/release/grafana-proxy --webhook-url \u003cyour-power-automate-webhook-url\u003e [--bind-ip \u003cip-address\u003e] [--bind-port \u003cport\u003e]\n```\n\n預設情況下，伺服器將在 `http://0.0.0.0:3080` 上啟動。\n\n### 範例\n\n```bash\n# 使用預設 IP 和埠號執行\n./target/release/grafana-proxy --webhook-url \"https://prod-123.westeurope.logic.azure.com:443/workflows/...\"\n\n# 使用指定的 IP 和埠號執行\n./target/release/grafana-proxy --webhook-url \"https://prod-123.westeurope.logic.azure.com:443/workflows/...\" --bind-ip 127.0.0.1 --bind-port 8888\n```\n\n然後，設定您的 Grafana 通知頻道，將 Webhook 發送到 `http://\u003cyour-server-ip\u003e:\u003cport\u003e/grafana-webhook`。\n\n## 授權\n\n本專案採用 MIT 授權。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseconddim%2Fgrafana-proxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseconddim%2Fgrafana-proxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseconddim%2Fgrafana-proxy/lists"}