Skip to content
Snippets Groups Projects
user avatar
Rowan Powell authored
c9110cf2
History

FLAME Cross Layer Management and Control

Version: X.X

About this document

Authors

Authors Organisation
Michael Boniface University of Southampton, IT Innovation Centre
Simon Crowle University of Southampton, IT Innovation Centre

Contents

Configuration and Monitoring Specification Test Framework

To set up a test version of Tick Stack run the following command from the root diec

vagrant up

The will create a VM with InfluxDB, Kapacitor, Telegraf and Capacitor installed with the following ports forwarded on the host machine

Influx: 8086 Chronograf: 8888 Kapacitor: 9092

Configuration and Monitoring Specification Test Framework

A Java/JUnit test framework has been developed to provide concrete examples of the CLMC monitoring specification. To build and run this test framework you will need:

  1. The CLMC TICK stack installed and running (provided as a Vagrant solution in this project)

  2. Java JDK 1.8+ installed

  3. Maven 3+ installed

  • Optionally a Java IDE installed, such as NetBeans
Building the test framework
  1. Clone this project (obviously)

  2. Open the Maven project (<flame-clmc root>\src\clmc-spec) in your Java IDE or navigate to POM.xml file in command line

  3. Check the monSpecTestConfig.properties file (src/main/resources) matches your TICK stack set-up. It's likely to.

  4. Build the project (this should automatically build and run the tests)

    From the command line: mvn test

Extending the test framework

This test framework is easily extendible. There are two simple tests already ready for you to explore:

  • BasicInputTest.java - This tries sending some basic metrics about a host to InfluxDB
  • BasicQueryTest.java - This tries querying InfluxDB about host metrics

Each test case uses resources in the project to send test data or execute queries. In the first case the resource '/src/main/resources/inputs/host_resource_input' is a file with example InfluxDB Line Protocol statements. In the second test case, the file '/src/main/resources/host_resource_query' contains queries that are executed against InfluxDB. The results of these are currently just output to the console.