Giter VIP home page Giter VIP logo

snowflake-prometheus-exporter's Introduction

snowflake-prometheus-exporter

Exports Snowflake warehouse, database, table, and replication statistics for a Snowflake account via HTTP for Prometheus consumption.

Configuration

Command line flags

The exporter may be configured through its command line flags:

  -h, --help                 Show context-sensitive help (also try --help-long and --help-man).
      --web.listen-address=:9975 ...  
                             Addresses on which to expose metrics and web interface. Repeatable for multiple addresses.
      --web.config.file=""   [EXPERIMENTAL] Path to configuration file that can enable TLS or authentication.
      --web.telemetry-path="/metrics"  
                             Path under which to expose metrics.
      --account=ACCOUNT      The account to collect metrics for.
      --username=USERNAME    The username for the user used when querying metrics.
      --password=PASSWORD    The password for the user used when querying metrics.
      --role="ACCOUNTADMIN"  The role to use when querying metrics.
      --warehouse=WAREHOUSE  The warehouse to use when querying metrics.
      --version              Show application version.
      --log.level=info       Only log messages with the given severity or above. One of: [debug, info, warn, error]
      --log.format=logfmt    Output format of log messages. One of: [logfmt, json]

Example usage:

./snowflake-exporter --account=XXXXXXX-YYYYYYY --username=USERNAME --password=PASSWORD --warehouse=WAREHOUSE --role=ACCOUNTADMIN

Environment Variables

Alternatively, the exporter may be configured using environment variables:

Name Description
SNOWFLAKE_EXPORTER_ACCOUNT The account to collect metrics for.
SNOWFLAKE_EXPORTER_USERNAME The username for the user used when querying metrics.
SNOWFLAKE_EXPORTER_PASSWORD The password for the user used when querying metrics.
SNOWFLAKE_EXPORTER_ROLE The role to use when querying metrics.
SNOWFLAKE_EXPORTER_WAREHOUSE The warehouse to use when querying metrics.
SNOWFLAKE_EXPORTER_WEB_TELEMETRY_PATH Path under which to expose metrics.

Example usage:

SNOWFLAKE_EXPORTER_ACCOUNT=XXXXXXX-YYYYYYY \
SNOWFLAKE_EXPORTER_USERNAME=USERNAME \
SNOWFLAKE_EXPORTER_PASSWORD=PASSWORD \
SNOWFLAKE_EXPORTER_ROLE=ACCOUNTADMIN \
SNOWFLAKE_EXPORTER_WAREHOUSE=WAREHOUSE \
./snowflake-exporter

snowflake-prometheus-exporter's People

Contributors

binaryfissiongames avatar dasomeone avatar gaantunes avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

snowflake-prometheus-exporter's Issues

Helm Chart distribution

I became interested in this tool but I'd have to setup lots of things in-house like CICD for building it, some container registry for storing it, and Kubernetes manifests (Helm Chart?) to manage the installation in my cluster.

I'd like to contribute on such features myself and I'd appreciate some guidance to do it.

Make versioned binaries available

I became interested in this tool but I'd have to setup lots of things in-house like CICD for building it, some container registry for storing it, and Kubernetes manifests to manage the installation in my cluster.

I'd like to contribute such features myself and I'd appreciate some guidance to do it.

Can't make bin

Is there a way to just download a pre-build bin?

When running

make

I get the following error

>> checking code style
>> checking license header
>> running golangci-lint
go list -e -compiled -test=true -export=false -deps=true -find=false -tags= -- ./... > /dev/null
/root/go/bin/golangci-lint run  ./...
make: *** [common-lint] Killed

When I comment the golangci-lint run command then I get this error.

{"err":"failed to open database","level":"error","msg":"Failed to connect to Snowflake."}

It looks like the build requires a test that connects to a real database before it will build the bin?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.