Add comments for _build_paginate_query

Add comments for _build_paginate_query which will called
_recurse_sort_keys. It will generate the query criteria
recursively if multiple sort keys passed in.

Change-Id: I102308fc1a57f1ba8bd96e64badedbcf60840c28
Adds doc string to query validate functions in V2 API

Rename is_timestamp_valid parameter to allow_timestamps and add
doc string to _validate_query and _validate_timestamp_fields
functions, related to the bugfix of bug 1280975.

Change-Id: I7c8564ce88d048e5b7d6d1e3c7109c5cb08e48f3
Fix typo on testing doc page

Fix typo.

Change-Id: I50e4f3ac87ad52df931b45c6138038e28cefb95e
Imported Translations from Transifex

Change-Id: I4833a79dc0ac38bbec35f08866142595a62afc46
Remove code duplication Part 2

Remove code duplication from impl_mongodb and impl_db2 as both of
these drivers use pymongo. This is a multiple step process as there
are several differences between the implementation of these drivers.

The second step is about to move the query related functions into
pymongo_base.

Change-Id: I1d3ce36a9189e1773ef44578e990429ace64792a
Pluggable resource discovery for agents

Precursor-to: BP decoupled-source-sink-discoverable-resources

Add the concept of per-AgentManager resource discovery extensions
loaded via stevedore entry points. The extensions are loaded from
a single namespace:

  ceilometer.discover

shared by all agents. An agent may have a list of per-agent default
discovery extensions associated with it on creation. This is used
by the compute agent, which currently uses a single discovery extension
for all matching pipelines.

The per-pipeline statically configured resources remain in place to
potentially override the per-agent discovered resources - these will
be augmented by per-pipeline discovery in a subsequent patch.

Recast the compute agent's interrogation of the nova servers API
in the form of a discovery extension.

Unify the pollster abstraction used by the central and compute
agents (which had previously diverged along with the introduction
of per-pipeline resources).

Unify the polling task logic used by the central and compute
agents (so that the compute agent now iterates over each pollster
for all local instances, as opposed to interating over all
pollsters for each local instance).

Change-Id: I625df47231a1dbf7ef721c297701799b224ce67e
Merge "Imported Translations from Transifex"
Updated from global requirements

Change-Id: I24a41905d6638bbf3c533a342cfff19be14531c9
Added hardware agent's inspector and snmp implementation

Added the inspector interface to hardware agent, also added the snmp
implementation of that inspector.

Implements: blueprint monitoring-physical-devices

Based on the original code at https://github.com/graflu0/ceilometer
contributed by Lucas and Toni.

Change-Id: I7cbaf94d72d389dc802c42b6ca8939b81a1d6b10
Signed-off-by: Lucas Graf <graflu0@students.zhaw.ch>
Signed-off-by: Toni Zehnder <zehndton@students.zhaw.ch>
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Merge "Remove code duplication Part 2"
Added hardware pollsters for the central agent

This patch added various pollsters for the hardware agent.

Implements: blueprint monitoring-physical-devices

Based on the original code at https://github.com/graflu0/ceilometer
contributed by Lucas and Toni.

Signed-off-by: Lucas Graf <graflu0@students.zhaw.ch>
Signed-off-by: Toni Zehnder <zehndton@students.zhaw.ch>
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>

Change-Id: Id259b95efdbf0b7d03b657586d588f9637d9a367
Merge "Updated from global requirements"
Remove unused variable

o ceilometer/compute/virt/hyperv/utilsv2.py:    _AGGREG_METRIC
  = 'Msvm_AggregationMetricDefinition'

  This variable was added in the following commit.

    commit 81e336a376d8a6e61a9a7bb5c686ab22ad38ee0d
    Author: Claudiu Belu <cbelu@cloudbasesolutions.com>
    Date:   Thu Aug 22 09:59:51 2013 -0700

        Adds Hyper-V compute inspector

  But there is no evidence that was used.

Change-Id: I417d6a249cb196d4e9e988d6d93d91623671f7af
Alarm support in HBase Part 1

Two additional tables are introduced for alarms and alarm_history.
Ordering in alarm_history was achived by that fact that HBase
stores entries in alphabetical order. It is needed to enlarge the
preciseness of reverse_timestamp because alarms history entries may be
generated once per second, especially in tests.

Partially implements bp hbase-alarming

Change-Id: I41bc60f13779899af0e8f8e01f85b2ee6d1c8aae
Alarms support in HBase Part 2

Refactor query creation: it is needed to make two different
methods for query creation and start and stop - rows determination.

Partialy implements bp hbase-alarming

Change-Id: I2a2a728597d92c27b86e4a93dd0f151b6f52403b
Implements metadata query for complex query feature

A subfield in the resource_metadata field of the Sample
can be used in filter expression as
  metadata.<subfield_name>

Validation of the names of the metadata is not implemented

Implements: blueprint complex-filter-expressions-in-api-queries
Change-Id: Icf198f740191b5fff0008e9aa7b054c1cc33d75d
Implements "not" operator for complex query

Change-Id: Idf17b35c5f4267b9254a64e37b0d8b1b0dcbca89
Implements: blueprint complex-filter-expressions-in-api-queries
Make recording and scanning data more determined

HBase may contain only strings and unicodes.
In current implementation some entries put to db after str() or unicode(),
others are not being modified at all.
It is needed to make this process more determined. It may be achived by
creating serialize() and deserialized() methods. In these methods json library
may be used for safe work with HBase.

Partially implements bp hbase-alarming

Change-Id: If67a103e1d79d98cc93b88fe60e79c97fd17bb96
Merge "Added hardware agent's inspector and snmp implementation"
Merge "Added hardware pollsters for the central agent"