Commit 1f498cc6 authored by Razvan Becheriu's avatar Razvan Becheriu
Browse files

updated ChangeLog, AUTHORS and addressed formatting

parent c7b8c275
......@@ -193,6 +193,7 @@ We have received the following contributions:
- Franciszek Gorski
2018-10: Makefile bug fixed
2019-07: Statistics enhancements
- Suzanne Goldlust
2018-10: API documentation
......
1620. [func] franek, razvan
Kea statistics improvements: Support for storing more than one
sample.
(Gitlab #696,!418, git c7b8c275758c96f56081e02da429f5dd9d653b87)
1619. [func] marcin
Add support for associating subnets with the server tags in the
mysql_cb hooks library.
......
......@@ -164,7 +164,7 @@ size_t Observation::getSizeInternal(StorageType& storage, Type exp_type) const {
template<typename SampleType, typename StorageType>
void Observation::setValueInternal(SampleType value, StorageType& storage,
Type exp_type) {
Type exp_type) {
if (type_ != exp_type) {
isc_throw(InvalidStatType, "Invalid statistic type requested: "
<< typeToText(exp_type) << ", but the actual type is "
......@@ -247,7 +247,8 @@ std::list<StringSample> Observation::getStrings() const {
}
template<typename SampleType, typename Storage>
std::list<SampleType> Observation::getValuesInternal(Storage& storage, Type exp_type) const {
std::list<SampleType> Observation::getValuesInternal(Storage& storage,
Type exp_type) const {
if (type_ != exp_type) {
isc_throw(InvalidStatType, "Invalid statistic type requested: "
<< typeToText(exp_type) << ", but the actual type is "
......@@ -265,7 +266,8 @@ std::list<SampleType> Observation::getValuesInternal(Storage& storage, Type exp_
template<typename StorageType>
void Observation::setMaxSampleAgeInternal(StorageType& storage,
const StatsDuration& duration, Type exp_type) {
const StatsDuration& duration,
Type exp_type) {
if (type_ != exp_type) {
isc_throw(InvalidStatType, "Invalid statistic type requested: "
<< typeToText(exp_type) << ", but the actual type is "
......@@ -289,7 +291,8 @@ void Observation::setMaxSampleAgeInternal(StorageType& storage,
template<typename StorageType>
void Observation::setMaxSampleCountInternal(StorageType& storage,
uint32_t max_samples, Type exp_type) {
uint32_t max_samples,
Type exp_type) {
if (type_ != exp_type) {
isc_throw(InvalidStatType, "Invalid statistic type requested: "
<< typeToText(exp_type) << ", but the actual type is "
......
......@@ -121,10 +121,10 @@ class Observation {
///
/// @param duration determines maximum age of samples
/// Example:
/// To set a statistic to keep observations for the last 5 minutes,
/// call: setMaxSampleAge(time_duration(0, 5, 0, 0));
/// To set a statistic to keep observations for the last 5 minutes, call:
/// setMaxSampleAge(time_duration(0, 5, 0, 0));
/// To revert statistic to a single value, call:
/// setMaxSampleAge(time_duration(0, 0, 0, 0))
/// setMaxSampleAge(time_duration(0, 0, 0, 0));
void setMaxSampleAge(const StatsDuration& duration);
/// @brief Determines how many samples of a given statistic should be kept.
......@@ -134,6 +134,7 @@ class Observation {
/// be kept. When adding max_samples + 1 sample, the oldest sample will be
/// discarded.
///
///
/// @param max_samples how many samples of a given statistic should be kept
/// Example:
/// To set a statistic to keep the last 100 observations, call:
......@@ -268,7 +269,7 @@ private:
/// @tparam Storage type of storage (e.g. list<IntegerSample>)
/// @param storage storage which size will be returned
/// @param exp_type expected observation type (used for sanity checking)
/// @return Size of storage
/// @return size of storage
template<typename StorageType>
size_t getSizeInternal(StorageType& storage, Type exp_type) const;
......@@ -306,7 +307,7 @@ private:
/// @param observation storage
/// @param exp_type expected observation type (used for sanity checking)
/// @throw InvalidStatType if observation type mismatches
/// @return List of observed samples
/// @return list of observed samples
template<typename SampleType, typename Storage>
std::list<SampleType> getValuesInternal(Storage& storage,
Type exp_type) const;
......@@ -338,7 +339,7 @@ private:
Type type_;
/// @brief Maximum number of samples
/// The limit is represent as a pair
/// The limit is represented as a pair
/// of bool value and uint32_t
/// Only one kind of limit can be active
/// The bool value informs which limit
......@@ -349,7 +350,7 @@ private:
std::pair<bool, uint32_t> max_sample_count_ = std::make_pair(true, 20);
/// @brief Maximum timespan of samples
/// The limit is represent as a pair
/// The limit is represented as a pair
/// of bool value and StatsDuration(boost::posix_time::time_duration)
/// Only one kind of limit can be active
/// The bool value informs which limit
......
......@@ -90,7 +90,8 @@ bool StatsMgr::setMaxSampleAge(const std::string& name,
}
}
bool StatsMgr::setMaxSampleCount(const std::string& name, uint32_t max_samples) {
bool StatsMgr::setMaxSampleCount(const std::string& name,
uint32_t max_samples) {
ObservationPtr obs = getObservation(name);
if (obs) {
obs->setMaxSampleCount(max_samples);
......
......@@ -138,10 +138,11 @@ class StatsMgr : public boost::noncopyable {
/// @param name name of the observation
/// @param duration determines maximum age of samples
/// @return true if successful, false if there's no such statistic
/// Example: to set a statistic to keep observations for the last 5 minutes,
/// call setMaxSampleAge("incoming-packets", time_duration(0, 5, 0, 0));
/// Example:
/// To set a statistic to keep observations for the last 5 minutes, call:
/// setMaxSampleAge("incoming-packets", time_duration(0, 5, 0, 0));
/// to revert statistic to a single value, call:
/// setMaxSampleAge("incoming-packets" time_duration(0, 0, 0, 0))
/// setMaxSampleAge("incoming-packets", time_duration(0, 0, 0, 0));
bool setMaxSampleAge(const std::string& name, const StatsDuration& duration);
/// @brief Determines how many samples of a given statistic should be kept.
......
......@@ -493,7 +493,6 @@ TEST_F(ObservationTest, floatToJSON) {
// See https://gitlab.isc.org/isc-projects/kea/wikis/designs/Stats-design for
// details.
TEST_F(ObservationTest, durationToJSON) {
// String which contains first added sample
std::string first_sample = ", \"01:02:03.000004\", \"" +
isc::util::ptimeToText(c.getDuration().second) + "\" ] ]";
......@@ -515,6 +514,7 @@ TEST_F(ObservationTest, stringToJSON) {
// String which contains first added sample
std::string first_sample = ", \"1234\", \"" +
isc::util::ptimeToText(d.getString().second) + "\" ] ]";
d.setValue("Lorem ipsum dolor sit amet");
std::string exp = "[ [ \"Lorem ipsum dolor sit amet\", \"" +
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment