X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=example%2Fdiameter%2Flauncher%2FMyCounterRecorder.cpp;h=3d6efab65791c433fbcb5ec2caecda77dbaee135;hb=5a6cba5fde2b2f538a7515f8293cc0a8d9589dfa;hp=4f62f728118f3c861bd69d3b15d28f46694520eb;hpb=752438861433c3789eb1b0d9f2c15e15037595e6;p=anna.git diff --git a/example/diameter/launcher/MyCounterRecorder.cpp b/example/diameter/launcher/MyCounterRecorder.cpp index 4f62f72..3d6efab 100644 --- a/example/diameter/launcher/MyCounterRecorder.cpp +++ b/example/diameter/launcher/MyCounterRecorder.cpp @@ -7,7 +7,7 @@ // Process -#include "MyCounterRecorder.hpp" +#include MyCounterRecorder::MyCounterRecorder(const std::string &fnp) : a_stream(-1), a_fileNamePrefix(fnp) { @@ -15,7 +15,7 @@ MyCounterRecorder::MyCounterRecorder(const std::string &fnp) : a_stream(-1), a_f } // pure virtual definitions: -void MyCounterRecorder::open() throw(anna::RuntimeException) { +void MyCounterRecorder::open() noexcept(false) { static char str [256]; const time_t now = ::time(NULL); struct tm tmNow; @@ -34,7 +34,7 @@ void MyCounterRecorder::open() throw(anna::RuntimeException) { anna::Logger::debug(msg, ANNA_FILE_LOCATION); ); - if((a_stream = ::open(a_fileName.c_str(), O_WRONLY | O_CREAT, S_IWUSR)) == -1) + if((a_stream = ::open(a_fileName.c_str(), O_WRONLY | O_CREAT, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH /*0644*/)) == -1) throw RuntimeException(anna::functions::asString("Error opening file '%s'; errno = %d", a_fileName.c_str(), errno), ANNA_FILE_LOCATION); sprintf(str, "%04d-%02d-%02d %02d:%02d|%04d-%02d-%02d %02d:%02d", @@ -46,7 +46,7 @@ void MyCounterRecorder::open() throw(anna::RuntimeException) { a_fixedLine = str; } -void MyCounterRecorder::apply(const anna::oam::Counter& counter) throw(anna::RuntimeException) { +void MyCounterRecorder::apply(const anna::oam::Counter& counter) noexcept(false) { static char line [356]; anna::oam::Counter::type_t value = counter; sprintf(line, "%s|%06d|%07u|%s\n", a_fixedLine.c_str(), counter.getReference(), value, counter.getName().c_str()); @@ -55,17 +55,17 @@ void MyCounterRecorder::apply(const anna::oam::Counter& counter) throw(anna::Run throw RuntimeException(anna::functions::asString("Error writting to file '%s'; errno = %d", a_fileName.c_str(), errno), ANNA_FILE_LOCATION); } -void MyCounterRecorder::close() throw() { +void MyCounterRecorder::close() { if(a_stream != -1) { ::close(a_stream); a_stream = -1; } -chmod(a_fileName.c_str(), S_IWUSR | S_IRUSR); +//chmod(a_fileName.c_str(), S_IWUSR | S_IRUSR); a_previousTime = ::time(NULL); } -std::string MyCounterRecorder::asString() const throw() { +std::string MyCounterRecorder::asString() const { std::string result = "Physical counters dump at file '"; result += a_fileName; result += "'. Another way to see counters: context dump (kill -10 ";