summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/MetricsAdminI.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2012-09-14 09:38:12 +0200
committerBenoit Foucher <benoit@zeroc.com>2012-09-14 09:38:12 +0200
commit385eee21aa83ab84227900bef4e4f821e8f18ab8 (patch)
tree2d251648e791c0be499c50d14ccc1ec4626be29d /cpp/src/Ice/MetricsAdminI.cpp
parentFixed IceGrid issue caused by skype_props merge (diff)
downloadice-385eee21aa83ab84227900bef4e4f821e8f18ab8.tar.bz2
ice-385eee21aa83ab84227900bef4e4f821e8f18ab8.tar.xz
ice-385eee21aa83ab84227900bef4e4f821e8f18ab8.zip
Fixed metrics tests
Diffstat (limited to 'cpp/src/Ice/MetricsAdminI.cpp')
-rw-r--r--cpp/src/Ice/MetricsAdminI.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/cpp/src/Ice/MetricsAdminI.cpp b/cpp/src/Ice/MetricsAdminI.cpp
index d70ca64458b..493f0a30e40 100644
--- a/cpp/src/Ice/MetricsAdminI.cpp
+++ b/cpp/src/Ice/MetricsAdminI.cpp
@@ -121,16 +121,19 @@ MetricsMapI::RegExp::~RegExp()
bool
MetricsMapI::RegExp::match(const MetricsHelper& helper, bool reject)
{
- string value = helper(_attribute);
- if(value == "unknown") // Unknown attributes are ignored by filtering
+ try
{
- return !reject;
- }
+ string value = helper(_attribute);
#ifndef ICE_CPP11_REGEXP
- return regexec(&_preg, value.c_str(), 0, 0, 0) == 0;
+ return regexec(&_preg, value.c_str(), 0, 0, 0) == 0;
#else
- return regex_match(value, _regex);
+ return regex_match(value, _regex);
#endif
+ }
+ catch(const std::exception&)
+ {
+ return !reject;
+ }
}
MetricsMapI::MetricsMapI(const std::string& mapPrefix, const PropertiesPtr& properties) :
@@ -258,6 +261,7 @@ MetricsViewI::update(const PropertiesPtr& properties,
{
// This map isn't configured anymore for this view.
updatedMaps.insert(p->second);
+ _maps.erase(mapName);
continue;
}
}