Huge news!Announcing our $20M Series A led by Andreessen Horowitz.Learn more
Socket
Socket
Log inDemoInstall

github.com/lifememoryteam/slack-grafana-image-renderer-picker

Package Overview
Dependencies
4
Maintainers
0
Issues
File Explorer

github.com/lifememoryteam/slack-grafana-image-renderer-picker

    v0.0.3

Version published
Maintainers
0

Readme

Slack Grafana Image Renderer Picker

Pick graph with Slack Slash Command from Grafana Image Renderer and post graph image to Slack.

Dependencies

  • Grafana
    • Grafana must be accessible with API Key or Auth Proxy Authentication
      • If you use Auth Proxy Authentication, the reverse proxy must support client certificate authentication.
  • Grafana Image Renderer
    • Grafana needs installed this plugin.

Deployment

Please read docker-compose.yml

Configuration

Basic

You need register an Slack Application for Slash Command and files:write permission token.

Slash command can be configured as follows:

Command: /graph
Request URL: https://your_server_host/slash
Short Description: Get Grafana Panel by alias
Usage Hint: [cpu|memory|disk] \d+[m|h|d|M]

Configuration file be specified as follows:

slack:
   token: xoxb-test # Slack Token (needs files:write permission)
   secret: 6e50     # Slack Verification Token
   addr: ":8080"    # Slash Command Server Listen Address
grafana:
   endpoint: "http://localhost:3000/" # Grafana Endpoint
   use_client_auth: true              # Enable Client Authentication for Auth Proxy
   client_auth_p12: "/ssl/key.p12"    # Certificate file (P12)
dashboards:
   -  name: disk                          # Graph Alias (string)
      dashboardId: "000000012"            # Graph Dashboard ID
      dashboardName: alerts-linux-nodes   # Graph Dashboard Name
      orgId: 1                            # Graph Org ID
      panelId: 1                          # Graph Panel ID
   -  name: cpu
      dashboardId: "000000012"
      dashboardName: alerts-linux-nodes
      orgId: 1
      panelId: 4
   -  name: memory
      dashboardId: "000000012"
      dashboardName: alerts-linux-nodes
      orgId: 1
      panelId: 5

dashboards specify a graph panel to be upload with Slack slash command. You can get the parameters of the graph panel by selecting the panel in Grafana and clicking on the share button.

name specifies the alias of a graph. So you can get a graph in Slack like /graph cpu.

Use Auth Proxy Authentication with Client Certificate

This application needs PKCS12 File (.p12) and password, and you need to enable use_client_auth and specify p12 file path on client_auth_p12 at config.yaml.

Run with environment: CONFIG_FILE=config.yaml CLIENT_AUTH_PASSWORD=p12_password

Use API Key

Run with environment: CONFIG_FILE=config.yaml GRAFANA_API_KEY=apikey

Usage

Invoke with /graph <alias> (<from_time_range>) (No <from_time_range> with default time range)

Example <from_time_range>: 15m 3h 1d 1M

FAQs

Last updated on 10 May 2020

Did you know?

Socket installs a GitHub app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.

Install
SocketSocket SOC 2 Logo

Product

  • Package Issues
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc