Giter VIP home page Giter VIP logo

geni-ops-monitoring's Introduction

This is GPO code for the GENI operational monitoring project.

For a description of what has changed in this release, see RELEASENOTES
in this directory.

For links to all documentation of the operational monitoring project, see:

  http://groups.geni.net/geni/wiki/OperationalMonitoring

This codebase is a set of reference components which fully or partially
implement parts of the monitoring component model listed at:

  http://www.gpolab.bbn.com/monitoring/components/

You can get more recent versions of this source by following the
directions here:

  http://trac.gpolab.bbn.com/ops-monitoring/wiki/GettingSourceCode

Current and past releases of this software are available here:

  http://software.geni.net/local-sw/

This directory contains one subdirectory for each component:
 * Directories which implement components of the ops monitoring model:
   * alerting/: reference alerting utilities 
   * collector/: reference collector 
   * schema/: schema/examples for datastore polling API
   * local/: reference local datastore 
 * Directories containing helper code:
   * common/: python libraries used by multiple components
   * config/: python configuration files used by multiple components
   * test/: generic utilities for testing code
   * cm/: configuration management utilities



======= Summary of all programs in the code base =======


 -- Local Datastore Database Handling Programs --

 * local/unit-tests/local_table_reset.py for reseting/initializing
   database tables at the local datastore

 * local/unit-tests/local_restart_node_interface_stats.py for
   populating the datastore's database with test data.  It uses
   local/stats_populator.py and local/info_populator.py classes


 -- External Check Datastore Data Generation Programs --

 * local/coordinate_mesoscale_experiments.py logs into a node of the
   monitoring sliver and calls the pinger program to record ping times
   across the mesoscale.  It grabs results from the pinger and inserts
   them into the database of the external check datastore.

 * local/unit-tests/pinger.py to be install along with
   local/unit-tests/ip_addresses.conf on a node called by the
   coordinate_mesoscale_experiments.py program to perform pings to
   addresses in ip_addresses.conf and write result tuples in a flat
   file for the coordinate_mesoscale_experiments.py to grab. 

 * local/extck_store.py this program populates a few of the basic
   tables at the external check store that are called during info
   queries (not time-series data queries). 

 * local/extck_populator.py this program populates the table
   ops_aggregate_is_available with time-series data about the
   health of the control plane.  This program requires omni to
   be configured in order to run because it actually calls 
   getVersion on each aggregate.


 -- Collector Programs that Collect Data --

 * collector/single_local_datastore_info_crawler.py - This program
   crawls a single datastore based on the arguments for what the
   crawler should look for.  This populates info tables (not
   time-series data tables).

 * collector/single_local_datastore_object_type_fetcher.py - This
   program fetches time-series data about objects of a single type out
   of a single datastore.  It is configured to query all event types
   for the requested objects' type.  It is configured to query all
   objects of the requested type.
 
 * collector/rest_call.py - This program sends a REST call to a datastore,
   prints the response, and validates it with validictory.  It can crawl an
   entire datastore either all at once or interactively.  Run with
   --help for more information.

 -- Collector Testing Programs --

 * collector/unit-tests/collector_table_reset.py - for reseting/initializing
   database tables at the collector.

 * collector/response_validator.py - Technically a set of functions
   that help determine if the json response from a datastore is
   formatted according to the json schema.


 -- Collector Nagios Programs --

 * collector/psql_queries.py - This is a program for Nagios sitting on
   top of the collector database.  It makes queries on behalf of Nagios.

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.