Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Rackspace Cloud Monitoring Agent
Lua CMake Shell Batchfile Tcl Makefile
Branch: master
Failed to load latest commit information.
check fix(plugin): fix type for new luvit
client add the minimum check period metric
cmake suppress warning on apt-get upgrade
contrib move docker meta folder to the parent
hostinfo feat(hostinfo/routes): fix merge conflicts
protocol add the minimum check period metric
runners fix(runners/hostinfo_runner): Make hostinfo runner types case insensi…
schedule add the minimum check period metric
static/tests Replace files lost in rebase for Windows MSI Upgrade Tests
tests add hostinfo test
.gitignore add more gitignores
.luacheckrc add mysql tests
.travis.yml fix gdb path
CHANGELOG bump to 2.1.9
CHANGELOG.old brand new changelog file
CMakeLists.txt fix(logrotate): logrotate permissions
Dockerfile update dockerfile
LICENSE.txt Stub out the basics for virgo.
Make.bat bump to 2.2.4 of lit
Makefile bump to 2.2.4 of lit
README.md hostinfo runner info
agent.ico backported changes from kans/zirgo
agent.lua fix error messages
appveyor.yml Convert MSSQL Tests to TAP
certs.lua add comments for certs
confd.lua add mysql tests
constants.lua Fix the conf.d path for Windows
endpoint.lua lint
hostname.lua fix hostname call on windows
main.lua Enable debug logging from the config file
package.lua fix(plugin): fix type for new luvit
setup.lua feat: add entity autocreate to --setup
staging.lua lint

README.md

Rackspace Monitoring Agent

Build status Build Status Stories in Ready Throughput Graph

The monitoring agent is the first agent to use the infrastructure provided by virgo-base-agent

Installing The Agent

Make sure you have the required packages to build things on your system. The Dockerfile will contain the development dependencies.

Please note, we provide binaries for many platforms. Check out the article here for instructions.

Otherwise, continue reading this section.

Satisfy pre-requisites:

If you're on windows you may have to either install or find and add certain utilities to your path beforehand. These are:

  • cmake - Downloadable from cmake gnu site
  • nmake - Included in Visual studio/VC/bin but may need to be inserted into your path
  • signtool - Included in Microsoft SDKs/windows/v7.1a/bin but may need to be inserted into your path

Get the source:

git clone https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent

Go into the directory that you just created:

cd rackspace-monitoring-agent

Build:

make 

Now simply install the virgo client by running this last and final command:

make install

After installing on unix systems, there is a new binary called rackspace-monitoring-agent. To get the client running on your system please follow the setup procedure as found here

Host Info Runner

The agent has a built in host information runner (similar to OHAI).

rackspace-monitoring-agent -e hostinfo_runner -x [type]

The following hostinfo types currently exist:

  CPU
  DATE
  DISK
  FILESYSTEM
  LOGIN
  MEMORY
  NETWORK
  PACKAGES
  PROCS
  SSHD
  SYSCTL
  SYSTEM
  WHO

License

The Monitoring Agent is distributed under the Apache License 2.0.

Building for Rackspace Cloud Monitoring

Rackspace customers: Virgo is the open source project for the Rackspace Cloud Monitoring agent. Feel free to build your own copy from this source.

But! Please don't contact Rackspace Support about issues you encounter with your custom build.

Versioning

The agent is versioned with a three digit dot seperated "semantic version" with the template being x.y.z. An example being e.g. 1.4.2. The rough meaning of each of these parts are:

  • major version numbers will change when we make a backwards incompatible change to the bundle format. Binaries can only run bundles with identical major version numbers. e.g. a binary of version 2.3.1 can only run bundles starting with 2.

  • minor version numbers will change when we make backwards compatible changes to the bundle format. Binaries can only run bundles with minor versions that are greater than or equal to the bundle version. e.g. a binary of version 2.3.1 can run a 2.3.4 bundle but not a 2.2.1 bundle.

  • patch version numbers will change everytime a new bundle is released. It has no semantic meaning to the versioning.

Running tests

Virgo supplies infrastructure for running tests. Calling make test will launch Virgo with command line flags set to feed it the testing bundle and with the -e flag set to tests.

make test

You can also run an individual test module:

TEST_MODULE=net make test

Configuration File Parameters

monitoring_token [token]         - (required) The authentication token.
monitoring_id [agent_id]         - (optional) The Agent's monitoring_id
                                   (default: Instance ID (Xen) or Cloud-Init ID)
monitoring_snet_region [region]  - (optional) Enable Service Net endpoints 
                                   (region: dfw, ord, lon, syd, hkg, iad)
monitoring_endpoints             - (optional) Force IP and Port, comma
                                   delimited
monitoring_proxy_url [url]       - (optional) Use a HTTP Proxy
                                   Must support CONNECT on port 443.
                                   Additionally, HTTP_PROXY and HTTPS_PROXY
                                   are honored.
monitoring_query_endpoints [queries] - (optional) SRV queries comma
                                        delimited

Exit Codes

1 unknown error
2 config file fail
3 already running

Signals

SIGUSR1: Force GC
SIGUSR2: Toggle Debug
Something went wrong with that request. Please try again.