Commit 07d1c5cd authored by Pavel Vainerman's avatar Pavel Vainerman

(TSDB): reopen connection for error "broken pipe"

parent 1df41e4b
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
Name: libuniset2 Name: libuniset2
Version: 2.8 Version: 2.8
Release: alt5 Release: alt6
Summary: UniSet - library for building distributed industrial control systems Summary: UniSet - library for building distributed industrial control systems
License: LGPL License: LGPL
...@@ -544,6 +544,9 @@ rm -f %buildroot%_docdir/%oname/html/*.md5 ...@@ -544,6 +544,9 @@ rm -f %buildroot%_docdir/%oname/html/*.md5
# history of current unpublished changes # history of current unpublished changes
%changelog %changelog
* Mon Feb 11 2019 Pavel Vainerman <pv@altlinux.ru> 2.8-alt6
- (TSDB): reopen connection for error "broken pipe"
* Sat Feb 09 2019 Pavel Vainerman <pv@altlinux.ru> 2.8-alt5 * Sat Feb 09 2019 Pavel Vainerman <pv@altlinux.ru> 2.8-alt5
- (uniset-codegen): setup logrotate command - (uniset-codegen): setup logrotate command
......
...@@ -365,9 +365,16 @@ bool BackendOpenTSDB::flushBuffer() ...@@ -365,9 +365,16 @@ bool BackendOpenTSDB::flushBuffer()
return true; return true;
} }
catch( Poco::IOException& ex )
{
mywarn << "(flushBuffer): (io): " << ex.displayText() << endl;
lastError = ex.displayText();
if( !reconnect() )
askTimer(tmReconnect, reconnectTime);
}
catch( std::exception& ex ) catch( std::exception& ex )
{ {
mywarn << "(flushBuffer): " << ex.what() << endl; mywarn << "(flushBuffer): (std): " << ex.what() << endl;
lastError = ex.what(); lastError = ex.what();
} }
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ. ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ.
*/ */
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// generate timestamp: 2019-02-02+03:00 // generate timestamp: 2019-02-09+03:00
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
#ifndef UObject_SK_H_ #ifndef UObject_SK_H_
#define UObject_SK_H_ #define UObject_SK_H_
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ. ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ.
*/ */
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// generate timestamp: 2019-02-02+03:00 // generate timestamp: 2019-02-09+03:00
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
#include <memory> #include <memory>
#include <iomanip> #include <iomanip>
...@@ -491,7 +491,9 @@ void UObject_SK::preSysCommand( const SystemMessage* _sm ) ...@@ -491,7 +491,9 @@ void UObject_SK::preSysCommand( const SystemMessage* _sm )
string fname( log()->getLogFile() ); string fname( log()->getLogFile() );
if( !fname.empty() ) if( !fname.empty() )
{ {
mylog->logFile(fname.c_str(),true);
mylog->logFile(fname.c_str(),false);
mylogany << myname << "(preSysCommand): ***************** mylog LOG ROTATE *****************" << endl; mylogany << myname << "(preSysCommand): ***************** mylog LOG ROTATE *****************" << endl;
} }
......
...@@ -430,6 +430,11 @@ void LogReader::readlogs( const std::string& _addr, int _port, LogServerTypes::C ...@@ -430,6 +430,11 @@ void LogReader::readlogs( const std::string& _addr, int _port, LogServerTypes::C
{ {
cerr << "(LogReader): " << e.displayText() << " (" << _addr << ")" << endl; cerr << "(LogReader): " << e.displayText() << " (" << _addr << ")" << endl;
} }
catch( Poco::IOException& ex )
{
cerr << "(LogReader): " << e.displayText() << " (" << _addr << ")" << endl;
disconnect();
}
catch( const std::exception& ex ) catch( const std::exception& ex )
{ {
cerr << "(LogReader): " << ex.what() << endl; cerr << "(LogReader): " << ex.what() << endl;
...@@ -470,6 +475,10 @@ void LogReader::sendCommand(LogServerTypes::lsMessage& msg, bool verbose ) ...@@ -470,6 +475,10 @@ void LogReader::sendCommand(LogServerTypes::lsMessage& msg, bool verbose )
{ {
cerr << "(LogReader): send error: " << e.displayText() << endl; // " (" << _addr << ")" << endl; cerr << "(LogReader): send error: " << e.displayText() << endl; // " (" << _addr << ")" << endl;
} }
catch( Poco::IOException& ex )
{
cerr << "(LogReader): send error: " << ex.displayText() << endl;
}
catch( const std::exception& ex ) catch( const std::exception& ex )
{ {
cerr << "(LogReader): send error: " << ex.what() << endl; cerr << "(LogReader): send error: " << ex.what() << endl;
......
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