Giter VIP home page Giter VIP logo

ca-apm-grafana-datasource's Introduction

CA APM Grafana Data Source

CA APM data source for Grafana, based on the Metrics Data Web Service (SOAP)

This software is not affiliated with or supported by CA Technologies.

Features

  • Visualize CA APM (fka Introscope) metrics in Grafana dashboards (time series format)
  • Query Builder: Browse available metrics to construct a metric query
  • Refine the query afterwards with basic regular expressions, e.g. wildcards
  • Raw Query Mode: Construct your query manually to leverage all regex features
  • Use query-based variables for templating (agents and metrics)
  • Aggregate results if your query returns multiple series
  • Automatic character escaping, can be disabled

Demo-Recording

Just copy the contents of this repository to the plugin directory of your Grafana installation. Assuming the default data path, you should end up with /var/lib/grafana/plugins/ca-apm-datasource (Linux) or <Grafana home>/data/plugins/ca-apm-datasource (Windows) for example. Only the dist directory is required.

If you use Docker you can just mount the appropriate path. For example:

docker run \
  -d \
  --name=grafana \
  -p 3000:3000 \
  -v <absolute path to data source on host>:/var/lib/grafana/plugins/ca-apm-datasource \
  grafana/grafana

Data Source Configuration

To configure a CA APM data source in Grafana, you just have to provide the APM Enterprise Manager's API endpoint and proper authentication details (HTTP basic authentication). The specified user must be authorized to use the Metrics Data Web Service. Click "Save & Test" to make sure that your configuration works correctly.

Data Source Config

Metric Queries

To construct a metric query, first create a new panel on a dashboard and select a CA APM data source.

Query Builder

When you add a new query for a panel, the query builder mode is used by default. Simply click the respective buttons to browse and select agent, metric, and data frequency for your query.

Raw Query Mode

Click "Toggle Edit Mode" on the right-hand triple bar menu to switch to raw query mode. Although the query builder mode supports basic regular expressions, you can use the raw query mode to use more advanced regex features. Some regular expressions might require that you disable automatic escaping by toggling the respective checkbox. Additionally, raw query mode supports the aggregation of multiple series into a single aggregated series for display.

Beware: When you switch back to query builder mode, all the changes you made in raw query mode are lost.

Query Variables

You can create variables for templating based on APM queries. You can either query for agents or metrics. For agents, prepend your agent regex with "Agents|", for metrics use "Metrics|" instead. For example, "Agents|.+" will get you all agents. Use the regex option to transform your query results. See the animation below for an example of an agent query: Demo-Recording

Temporal Resolution Variable

Considering the different temporal aggregation levels of CA APM, it makes sense to use a template variable to control the temporal resolution of time series data dynamically. Simply create a dashboard variable of type Interval and use 15s,30s,1m,2m,6m,12m,24m,48m,1h,168m,12h for the values.

Series Aggregation

In raw query mode, you can choose an aggregation mode to aggregate multiple metrics into a single series of values. This way, you can get a single aggregated time series for visualization in Grafana if your query returns multiple metrics. The implemented aggregation modes are sum, mean, max, min, and median.

Series-Aggregation

Alias Names

You can specify regular expressions to configure alias names for the time series returned in response to your query. The regular expression is evaluated against the original name (metric path) of each series returned. Use capture groups to use parts of the original metric path in the alias name. Make sure that your configuration results in an individual alias name for each series.

Series-Alias

License

Copyright (c) 2017 Novatec Consulting GmbH. All rights reserved.

Licensed under the MIT License.

Issues, Feedback and Support

If you experience any issues, have some feedback, or are interested in support, contact us here on GitHub or via email at [email protected].

ca-apm-grafana-datasource's People

Contributors

dependabot[bot] avatar oberschlauberger avatar

Watchers

 avatar  avatar

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.