-
Notifications
You must be signed in to change notification settings - Fork 1
Intro
Elliott Ridgway edited this page May 18, 2021
·
1 revision
Watchr is a Java application designed to help you gather and visualize data over time.
- You have a nightly job that gathers metrics at the end of the process, and you'd like to visualize those metrics, with automatic updates to the graphs as more data is added.
- You have a large collection of timestamped report files that are all formatted similarly, and you would like to read all of these and generate graphs from the data.
- Watchr's flexible JSON configuration file allows you to create graphs tailored to your use case.
- Watchr graphs can be organized hierarchically (for example, if you have data on child processes that subdivide the value of a longer parent process).
- Automatically generate derivative data from your dataset, such as rolling averages.
- User-defined rules allow Watchr to react to new changes in incoming data.
- Easily filter out bad data points - no database access required
Inputs
- Watchr can read data out of any arbitrary XML file.
- Watchr can read data out of any arbitrary JSON file.
Graphing
- Watchr uses plotly.js to display its graphs by exporting to static HTML pages at the end of executing Watchr.
- Log an issue if you would like Watchr to support another graphing library.
Final Display
- Watchr can be executed on the command line as a standalone Java application.
- Watchr is also available as a Jenkins plugin.
- Log an issue if you would like to see Watchr integrated with your favorite data dashboard.
To get the basic functionality that Watchr provides, you will need to build watchr-core at minimum:
git clone https://github.com/sandialabs/watchr-core.git watchr-core
cd watchr-core
If building watchr-core as a standalone application:
mvn package appassembler:assemble
sh target/appassembler/bin/watchr
If building watchr-core as a dependency for another Maven jar:
mvn clean install