Commit ee28e7bd authored by Pavel Vainerman's avatar Pavel Vainerman

Добавил "синтаксический сахар" для логов (ucrit,uwarn,uinfo, и т.п.)

parent a155c412
......@@ -446,9 +446,9 @@ int omap()
conf->oind->printMap(cout);
cout << "==========================================================================\n";
}
catch(Exception& ex)
catch( Exception& ex )
{
ulog.crit() << " configuration init FAILED!!! \n";
ucrit << " configuration init failed: " << ex << endl;
return 1;
}
return 0;
......
......@@ -381,7 +381,7 @@ ModbusRTU::mbErrCode MBSlave::fileTransfer( ModbusRTU::FileTransferMessage& quer
int fd = open(fname.c_str(), O_RDONLY | O_NONBLOCK );
if( fd <= 0 )
{
dlog.warn() << "(fileTransfer): open '" << fname << "' with error: " << strerror(errno) << endl;
dwarn << "(fileTransfer): open '" << fname << "' with error: " << strerror(errno) << endl;
return ModbusRTU::erOperationFailed;
}
......@@ -393,7 +393,7 @@ ModbusRTU::mbErrCode MBSlave::fileTransfer( ModbusRTU::FileTransferMessage& quer
int ret = ::read(fd,&buf,sizeof(buf));
if( ret < 0 )
{
dlog.warn() << "(fileTransfer): read from '" << fname << "' with error: " << strerror(errno) << endl;
dwarn << "(fileTransfer): read from '" << fname << "' with error: " << strerror(errno) << endl;
close(fd);
return ModbusRTU::erOperationFailed;
}
......@@ -407,7 +407,7 @@ ModbusRTU::mbErrCode MBSlave::fileTransfer( ModbusRTU::FileTransferMessage& quer
struct stat fs;
if( fstat(fd,&fs) < 0 )
{
dlog.warn() << "(fileTransfer): fstat for '" << fname << "' with error: " << strerror(errno) << endl;
dwarn << "(fileTransfer): fstat for '" << fname << "' with error: " << strerror(errno) << endl;
close(fd);
return ModbusRTU::erOperationFailed;
}
......@@ -422,7 +422,7 @@ ModbusRTU::mbErrCode MBSlave::fileTransfer( ModbusRTU::FileTransferMessage& quer
if( !reply.set(query.numfile,numpacks,query.numpacket,buf,ret) )
{
dlog.warn() << "(fileTransfer): set date failed..." << endl;
dwarn << "(fileTransfer): set date failed..." << endl;
return ModbusRTU::erOperationFailed;
}
......
......@@ -376,7 +376,7 @@ ModbusRTU::mbErrCode MBTCPServer::fileTransfer( ModbusRTU::FileTransferMessage&
int fd = open(fname.c_str(), O_RDONLY | O_NONBLOCK );
if( fd <= 0 )
{
dlog.warn() << "(fileTransfer): open '" << fname << "' with error: " << strerror(errno) << endl;
dwarn << "(fileTransfer): open '" << fname << "' with error: " << strerror(errno) << endl;
return ModbusRTU::erOperationFailed;
}
......@@ -388,7 +388,7 @@ ModbusRTU::mbErrCode MBTCPServer::fileTransfer( ModbusRTU::FileTransferMessage&
int ret = ::read(fd,&buf,sizeof(buf));
if( ret < 0 )
{
dlog.warn() << "(fileTransfer): read from '" << fname << "' with error: " << strerror(errno) << endl;
dwarn << "(fileTransfer): read from '" << fname << "' with error: " << strerror(errno) << endl;
close(fd);
return ModbusRTU::erOperationFailed;
}
......@@ -402,7 +402,7 @@ ModbusRTU::mbErrCode MBTCPServer::fileTransfer( ModbusRTU::FileTransferMessage&
struct stat fs;
if( fstat(fd,&fs) < 0 )
{
dlog.warn() << "(fileTransfer): fstat for '" << fname << "' with error: " << strerror(errno) << endl;
dwarn << "(fileTransfer): fstat for '" << fname << "' with error: " << strerror(errno) << endl;
close(fd);
return ModbusRTU::erOperationFailed;
}
......@@ -417,7 +417,7 @@ ModbusRTU::mbErrCode MBTCPServer::fileTransfer( ModbusRTU::FileTransferMessage&
if( !reply.set(query.numfile,numpacks,query.numpacket,buf,ret) )
{
dlog.warn() << "(fileTransfer): set date failed..." << endl;
dwarn << "(fileTransfer): set date failed..." << endl;
return ModbusRTU::erOperationFailed;
}
......
......@@ -89,19 +89,16 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::callback()
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(execute): " &lt;&lt; ex &lt;&lt; endl;
}
catch(CORBA::SystemException&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): СORBA::SystemException: "
ucrit &lt;&lt; myname &lt;&lt; "(execute): СORBA::SystemException: "
&lt;&lt; ex.NP_minorString() &lt;&lt; endl;
}
catch(...)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): catch ..." &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(execute): catch ..." &lt;&lt; endl;
}
if( !active )
......@@ -124,7 +121,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::preSensorInfo( UniSetTypes::SensorM
if( _sm->id == <xsl:value-of select="../../@name"/> )
{
<xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> = _sm->value;
dlog.level( Debug::type(_sm->value) );
mylog.level( Debug::type(_sm->value) );
}
</xsl:if>
</xsl:if>
......@@ -146,8 +143,8 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::preAskSensors( UniversalIO::UIOComm
break;
}
if( !activated &amp;&amp; ulog.is_crit() )
ulog.crit() &lt;&lt; myname
if( !activated )
ucrit &lt;&lt; myname
&lt;&lt; "(preAskSensors): ************* don`t activated?! ************" &lt;&lt; endl;
for( ;; )
......@@ -165,18 +162,15 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::preAskSensors( UniversalIO::UIOComm
}
catch(SystemError&amp; err)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(preAskSensors): " &lt;&lt; err &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(preAskSensors): " &lt;&lt; err &lt;&lt; endl;
}
catch(Exception&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(preAskSensors): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(preAskSensors): " &lt;&lt; ex &lt;&lt; endl;
}
catch(...)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(preAskSensors): catch(...)" &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(preAskSensors): catch(...)" &lt;&lt; endl;
}
msleep(askPause);
}
......@@ -191,8 +185,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setValue( UniSetTypes::ObjectId _si
<xsl:if test="normalize-space(@vartype)='out'">
if( _sid == <xsl:value-of select="../../@name"/> )
{
if( ulog.is_level2() )
ulog.level2() &lt;&lt; "(setValue): <xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> = " &lt;&lt; _val &lt;&lt; endl;
ulog2 &lt;&lt; "(setValue): <xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> = " &lt;&lt; _val &lt;&lt; endl;
<xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> = _val;
<xsl:call-template name="setdata"/>
return;
......@@ -224,16 +217,14 @@ long <xsl:value-of select="$CLASSNAME"/>_SK::getValue( UniSetTypes::ObjectId _si
</xsl:if>
</xsl:if>
</xsl:for-each>
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getValue): Обращение к неизвестному датчику sid="
ucrit &lt;&lt; myname &lt;&lt; "(getValue): Обращение к неизвестному датчику sid="
&lt;&lt; _sid &lt;&lt; endl;
return 0;
}
catch(Exception&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getValue): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(getValue): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
}
......@@ -299,8 +290,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch(Exception&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(getdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......@@ -335,8 +325,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch(Exception&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......@@ -351,8 +340,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch(Exception&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......@@ -365,7 +353,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
if( prev_<xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> != <xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> )
</xsl:if>
{
// приходится искуственно использовать третий параметр,
// приходится искуственно использовать третий параметр,
// что-бы компилятор выбрал
// правильный(для аналоговых) конструктор у SensorMessage
IOController_i::CalibrateInfo _ci;
......
......@@ -94,19 +94,16 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::callback()
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(execute): " &lt;&lt; ex &lt;&lt; endl;
}
catch(CORBA::SystemException&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): СORBA::SystemException: "
ucrit &lt;&lt; myname &lt;&lt; "(execute): СORBA::SystemException: "
&lt;&lt; ex.NP_minorString() &lt;&lt; endl;
}
catch(...)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): catch ..." &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(execute): catch ..." &lt;&lt; endl;
}
if( !active )
......@@ -157,8 +154,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setValue( UniSetTypes::ObjectId _si
<xsl:if test="normalize-space(@vartype)='out'">
if( _sid == <xsl:value-of select="../../@name"/> )
{
if( ulog.is_level2() )
ulog.level2() &lt;&lt; "(setValue): <xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> = " &lt;&lt; _val &lt;&lt; endl;
ulog2 &lt;&lt; "(setValue): <xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> = " &lt;&lt; _val &lt;&lt; endl;
<xsl:call-template name="setprefix"/><xsl:value-of select="../../@name"/> = _val;
return;
}
......@@ -180,8 +176,7 @@ long <xsl:value-of select="$CLASSNAME"/>_SK::getValue( UniSetTypes::ObjectId _si
</xsl:if>
</xsl:for-each>
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getValue): Обращение к неизвестному датчику sid="
ucrit &lt;&lt; myname &lt;&lt; "(getValue): Обращение к неизвестному датчику sid="
&lt;&lt; _sid &lt;&lt; endl;
return 0;
......@@ -232,8 +227,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(getdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......@@ -268,8 +262,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......@@ -284,8 +277,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
......
......@@ -88,19 +88,16 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::callback()
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(execute): " &lt;&lt; ex &lt;&lt; endl;
}
catch(CORBA::SystemException&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): СORBA::SystemException: "
ucrit &lt;&lt; myname &lt;&lt; "(execute): СORBA::SystemException: "
&lt;&lt; ex.NP_minorString() &lt;&lt; endl;
}
catch(...)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): catch ..." &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(execute): catch ..." &lt;&lt; endl;
}
if( !active )
......@@ -116,8 +113,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setValue( UniSetTypes::ObjectId _si
<xsl:if test="normalize-space(@vartype)='out'">
if( _sid == <xsl:value-of select="@name"/> )
{
if( ulog.is_level2() )
ulog.level2() &lt;&lt; "(setState): <xsl:call-template name="setprefix"/><xsl:value-of select="@name"/> = " &lt;&lt; _val &lt;&lt; endl;
ulog2 &lt;&lt; "(setState): <xsl:call-template name="setprefix"/><xsl:value-of select="@name"/> = " &lt;&lt; _val &lt;&lt; endl;
<xsl:call-template name="setprefix"/><xsl:value-of select="@name"/> = _val;
<xsl:call-template name="setdata"/>
return;
......@@ -163,7 +159,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::preSensorInfo( UniSetTypes::SensorM
if( _sm->id == <xsl:value-of select="@name"/> )
{
<xsl:call-template name="setprefix"/><xsl:value-of select="@name"/> = _sm->value;
dlog.level( Debug::type(_sm->value) );
mylog.level( Debug::type(_sm->value) );
}
</xsl:if>
</xsl:if>
......@@ -188,14 +184,12 @@ long <xsl:value-of select="$CLASSNAME"/>_SK::getValue( UniSetTypes::ObjectId _si
return <xsl:call-template name="setprefix"/><xsl:value-of select="@name"/>;
}
</xsl:for-each>
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getValue): Обращение к неизвестному датчику sid="
ucrit &lt;&lt; myname &lt;&lt; "(getValue): Обращение к неизвестному датчику sid="
&lt;&lt; _sid &lt;&lt; endl;
}
catch(Exception&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getValue): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(getValue): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
......@@ -214,8 +208,8 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::preAskSensors( UniversalIO::UIOComm
break;
}
if( !activated &amp;&amp; ulog.is_crit() )
ulog.crit() &lt;&lt; myname
if( !activated )
ucrit &lt;&lt; myname
&lt;&lt; "(preAskSensors): ************* don`t activated?! ************" &lt;&lt; endl;
for( ;; )
......@@ -232,18 +226,15 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::preAskSensors( UniversalIO::UIOComm
}
catch(SystemError&amp; err)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(preAskSensors): " &lt;&lt; err &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(preAskSensors): " &lt;&lt; err &lt;&lt; endl;
}
catch(Exception&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(preAskSensors): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(preAskSensors): " &lt;&lt; ex &lt;&lt; endl;
}
catch(...)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(preAskSensors): catch(...)" &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(preAskSensors): catch(...)" &lt;&lt; endl;
}
msleep(askPause);
}
......@@ -275,8 +266,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch( UniSetTypes::Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(getdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
}
......@@ -293,8 +283,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch( UniSetTypes::Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
}
......@@ -312,8 +301,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId _code
}
catch( UniSetTypes::Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
}
......
......@@ -93,19 +93,16 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::callback()
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(execute): " &lt;&lt; ex &lt;&lt; endl;
}
catch(CORBA::SystemException&amp; ex)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): СORBA::SystemException: "
ucrit &lt;&lt; myname &lt;&lt; "(execute): СORBA::SystemException: "
&lt;&lt; ex.NP_minorString() &lt;&lt; endl;
}
catch(...)
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(execute): catch ..." &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(execute): catch ..." &lt;&lt; endl;
}
if( !active )
......@@ -121,8 +118,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setValue( UniSetTypes::ObjectId sid
<xsl:if test="normalize-space(@vartype)='out'">
if( sid == <xsl:value-of select="@name"/> )
{
if( ulog.is_level2() )
ulog.level2() &lt;&lt; "(setValue): <xsl:call-template name="setprefix"/><xsl:value-of select="@name"/> = " &lt;&lt; val &lt;&lt; endl;
ulog2 &lt;&lt; "(setValue): <xsl:call-template name="setprefix"/><xsl:value-of select="@name"/> = " &lt;&lt; val &lt;&lt; endl;
<xsl:call-template name="setprefix"/><xsl:value-of select="@name"/> = val;
return;
}
......@@ -178,8 +174,7 @@ long <xsl:value-of select="$CLASSNAME"/>_SK::getValue( UniSetTypes::ObjectId _si
return <xsl:call-template name="setprefix"/><xsl:value-of select="@name"/>;
</xsl:for-each>
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getValue): Обращение к неизвестному датчику sid="
ucrit &lt;&lt; myname &lt;&lt; "(getValue): Обращение к неизвестному датчику sid="
&lt;&lt; _sid &lt;&lt; endl;
return 0;
}
......@@ -214,8 +209,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId code,
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(getdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(getdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......@@ -232,8 +226,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId code,
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......@@ -251,8 +244,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId code,
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setdata): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......@@ -269,8 +261,7 @@ void <xsl:value-of select="$CLASSNAME"/>_SK::setMsg( UniSetTypes::ObjectId code,
}
catch( Exception&amp; ex )
{
if( ulog.is_crit() )
ulog.crit() &lt;&lt; myname &lt;&lt; "(setmsg): " &lt;&lt; ex &lt;&lt; endl;
ucrit &lt;&lt; myname &lt;&lt; "(setmsg): " &lt;&lt; ex &lt;&lt; endl;
throw;
}
</xsl:template>
......
......@@ -42,7 +42,7 @@
#include <xsl:call-template name="preinclude"/>LT_Object.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>UniXML.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>Trigger.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>UniversalInterface.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>UInterface.h<xsl:call-template name="postinclude"/>
// -----------------------------------------------------------------------------
class <xsl:value-of select="$CLASSNAME"/>_SK:
<xsl:if test="normalize-space($BASECLASS)!=''">public <xsl:value-of select="normalize-space($BASECLASS)"/>,</xsl:if>
......
......@@ -31,7 +31,7 @@
// -----------------------------------------------------------------------------
#include &lt;sstream&gt;
#include <xsl:call-template name="preinclude"/>Configuration.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>ObjectsActivator.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>UniSetActivator.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>Debug.h<xsl:call-template name="postinclude"/>
#include "<xsl:value-of select="$CLASSNAME"/>.h"
// -----------------------------------------------------------------------------
......@@ -53,10 +53,6 @@ int main( int argc,char* argv[] )
string confile = UniSetTypes::getArgParam( "--confile", argc, argv, "configure.xml" );
conf = new Configuration(argc, argv,confile);
string logfilename = conf->getArgParam("--logfile","<xsl:value-of select="$CLASSNAME"/>.log");
string logname( conf->getLogDir() + logfilename );
ulog.logFile( logname.c_str() );
// определяем ID объекта
ObjectId ID(DefaultObjectId);
......@@ -73,8 +69,12 @@ int main( int argc,char* argv[] )
}
<xsl:value-of select="$CLASSNAME"/> obj(ID);
ObjectsActivator act;
string logfilename = conf->getArgParam("--logfile","<xsl:value-of select="$CLASSNAME"/>.log");
string logname( conf->getLogDir() + logfilename );
obj.mylog.logFile( logname.c_str() );
UniSetActivator act;
act.addObject(static_cast&lt;class UniSetObject*&gt;(&amp;obj));
SystemMessage sm(SystemMessage::StartUp);
......
......@@ -33,7 +33,7 @@
// -----------------------------------------------------------------------------
#include &lt;sstream&gt;
#include <xsl:call-template name="preinclude"/>Configuration.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>ObjectsActivator.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>UniSetActivator.h<xsl:call-template name="postinclude"/>
#include <xsl:call-template name="preinclude"/>Debug.h<xsl:call-template name="postinclude"/>
#include "<xsl:value-of select="$CLASSNAME"/>.h"
// -----------------------------------------------------------------------------
......@@ -55,10 +55,6 @@ int main( int argc, const char** argv )
string confile = UniSetTypes::getArgParam( "--confile", argc, argv, "configure.xml" );
conf = new Configuration(argc, argv, confile);
string logfilename = conf->getArgParam("--logfile","<xsl:value-of select="$CLASSNAME"/>.log");
string logname( conf->getLogDir() + logfilename );
ulog.logFile( logname.c_str() );
<xsl:if test="not(normalize-space(//@OID))=''">
<xsl:value-of select="$CLASSNAME"/> obj;
......@@ -79,9 +75,14 @@ int main( int argc, const char** argv )
}
}
<xsl:value-of select="$CLASSNAME"/> obj(ID);
string logfilename = conf->getArgParam("--logfile","<xsl:value-of select="$CLASSNAME"/>.log");
string logname( conf->getLogDir() + logfilename );
obj.mylog.logFile( logname.c_str() );
</xsl:if>
ObjectsActivator act;
UniSetActivator act;
act.addObject(static_cast&lt;class UniSetObject*&gt;(&amp;obj));
SystemMessage sm(SystemMessage::StartUp);
......
......@@ -31,10 +31,10 @@ int main( int argc, const char **argv )
SystemMessage sm(SystemMessage::StartUp);
act.broadcast( sm.transport_msg() );
ulog.ebug::ANY) << "\n\n\n";
ulog.ebug::ANY] << "(Skel::main): -------------- Skel START -------------------------\n\n";
dlog(Debug::ANY) << "\n\n\n";
dlog[Debug::ANY] << "(Skel::main): -------------- Skel START -------------------------\n\n";
ulog << "\n\n\n";
ulog << "(Skel::main): -------------- Skel START -------------------------\n\n";
dlog << "\n\n\n";
dlog << "(Skel::main): -------------- Skel START -------------------------\n\n";
act.run(false);
}
catch(SystemError& err)
......
......@@ -356,6 +356,7 @@ mv -f %buildroot%python_sitelibdir_noarch/* %buildroot%python_sitelibdir/%oname
- ObjectsActitvator --> UniSetActivator
- remove deprecated property: "sensebility"
- rename property "inverse" --> "threshold_invert"
- add syntax sugar for ulog, dlog (dcrit,dwarn,dlog1,ulog1,ucrit,...)
* Tue Dec 10 2013 Pavel Vainerman <pv@altlinux.ru> 1.7-alt3
- add RRDServer
......
......@@ -152,20 +152,17 @@ void DBServer_MySQL::parse( UniSetTypes::ConfirmMessage* cem )
if( !writeToBase(data.str()) )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(update_confirm): db error: "<< db->error() << endl;
ucrit << myname << "(update_confirm): db error: "<< db->error() << endl;
db->freeResult();
}
}
catch( Exception& ex )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(update_confirm): " << ex << endl;
ucrit << myname << "(update_confirm): " << ex << endl;
}
catch( ... )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(update_confirm): catch..." << endl;
ucrit << myname << "(update_confirm): catch..." << endl;
}
}
//--------------------------------------------------------------------------------------------
......@@ -188,8 +185,7 @@ bool DBServer_MySQL::writeToBase( const string& query )
qbuf.pop();
if( ulog.is_crit() )
ulog.crit() << myname << "(writeToBase): DB not connected! buffer(" << qbufSize
ucrit << myname << "(writeToBase): DB not connected! buffer(" << qbufSize
<< ") overflow! lost query: " << qlost << endl;
}
return false;
......@@ -231,11 +227,9 @@ void DBServer_MySQL::flushBuffer()
string err(db->error());
if( err.empty() )
db->freeResult();
else if( ulog.is_crit() )
{
ulog.crit() << myname << "(writeToBase): error: " << err <<
else
ucrit << myname << "(writeToBase): error: " << err <<
" lost query: " << qbuf.front() << endl;
}
qbuf.pop();
}
......@@ -269,20 +263,17 @@ void DBServer_MySQL::parse( UniSetTypes::SensorMessage *si )
if( !writeToBase(data.str()) )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(insert) sensor msg error: "<< db->error() << endl;
ucrit << myname << "(insert) sensor msg error: "<< db->error() << endl;
db->freeResult();
}
}
catch( Exception& ex )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(insert_main_history): " << ex << endl;
ucrit << myname << "(insert_main_history): " << ex << endl;
}
catch( ... )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(insert_main_history): catch ..." << endl;
ucrit << myname << "(insert_main_history): catch ..." << endl;
}
}
//--------------------------------------------------------------------------------------------
......@@ -346,8 +337,7 @@ void DBServer_MySQL::init_dbserver()
if( !db->connect(dbnode, user, password, dbname) )
{
// ostringstream err;
if( ulog.is_crit() )
ulog.crit() << myname
ucrit << myname
<< "(init): DB connection error: "
<< db->error() << endl;
// throw Exception( string(myname+"(init): не смогли создать соединение с БД "+db->error()) );
......@@ -372,8 +362,7 @@ void DBServer_MySQL::createTables( DBInterface *db )
UniXML_iterator it( conf->getNode("Tables") );
if(!it)
{
if( ulog.is_crit() )
ulog.crit() << myname << ": section <Tables> not found.."<< endl;
ucrit << myname << ": section <Tables> not found.."<< endl;
throw Exception();
}
......@@ -385,8 +374,8 @@ void DBServer_MySQL::createTables( DBInterface *db )
ulog[DBLogInfoLevel] << myname << "(createTables): create " << it.getName() << endl;
ostringstream query;
query << "CREATE TABLE " << conf->getProp(it,"name") << "(" << conf->getProp(it,"create") << ")";
if( !db->query(query.str()) && ulog.is_crit() )
ulog.crit() << myname << "(createTables): error: \t\t" << db->error() << endl;
if( !db->query(query.str()) )
ucrit << myname << "(createTables): error: \t\t" << db->error() << endl;
}
}
}
......@@ -399,8 +388,7 @@ void DBServer_MySQL::timerInfo( UniSetTypes::TimerMessage* tm )
{
if( !db->ping() )
{
if( ulog.is_warn() )
ulog.warn() << myname << "(timerInfo): DB lost connection.." << endl;
uwarn << myname << "(timerInfo): DB lost connection.." << endl;
connect_ok = false;
askTimer(DBServer_MySQL::PingTimer,0);
askTimer(DBServer_MySQL::ReconnectTimer,ReconnectTime);
......@@ -427,8 +415,7 @@ void DBServer_MySQL::timerInfo( UniSetTypes::TimerMessage* tm )
askTimer(DBServer_MySQL::PingTimer,PingTime);
}
connect_ok = false;
if( ulog.is_warn() )
ulog.warn() << myname << "(timerInfo): DB no connection.." << endl;
uwarn << myname << "(timerInfo): DB no connection.." << endl;
}
else
init_dbserver();
......@@ -436,8 +423,7 @@ void DBServer_MySQL::timerInfo( UniSetTypes::TimerMessage* tm )
break;
default:
if( ulog.is_warn() )
ulog.warn() << myname << "(timerInfo): Unknown TimerID=" << tm->id << endl;
uwarn << myname << "(timerInfo): Unknown TimerID=" << tm->id << endl;
break;
}
}
......
......@@ -148,19 +148,16 @@ void DBServer_SQLite::parse( UniSetTypes::ConfirmMessage* cem )
if( !writeToBase(data.str()) )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(update_confirm): db error: "<< db->error() << endl;
ucrit << myname << "(update_confirm): db error: "<< db->error() << endl;
}
}
catch( Exception& ex )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(update_confirm): " << ex << endl;
ucrit << myname << "(update_confirm): " << ex << endl;
}
catch( ... )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(update_confirm): catch..." << endl;
ucrit << myname << "(update_confirm): catch..." << endl;
}
}
//--------------------------------------------------------------------------------------------
......@@ -183,8 +180,7 @@ bool DBServer_SQLite::writeToBase( const string& query )
qbuf.pop();
if( ulog.is_crit() )
ulog.crit() << myname << "(writeToBase): DB not connected! buffer(" << qbufSize
ucrit << myname << "(writeToBase): DB not connected! buffer(" << qbufSize
<< ") overflow! lost query: " << qlost << endl;
}
return false;
......@@ -207,9 +203,9 @@ void DBServer_SQLite::flushBuffer()
// Сперва пробуем очистить всё что накопилось в очереди до этого...
while( !qbuf.empty() )
{
if( !db->insert(qbuf.front()) && ulog.is_crit() )
if( !db->insert(qbuf.front()) )
{
ulog.crit() << myname << "(writeToBase): error: " << db->error() <<
ucrit << myname << "(writeToBase): error: " << db->error() <<
" lost query: " << qbuf.front() << endl;
}
qbuf.pop();
......@@ -244,17 +240,16 @@ void DBServer_SQLite::parse( UniSetTypes::SensorMessage *si )
if( !writeToBase(data.str()) )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(insert) sensor msg error: "<< db->error() << endl;
ucrit << myname << "(insert) sensor msg error: "<< db->error() << endl;
}
}
catch( Exception& ex )
{
ulog.crit() << myname << "(insert_main_history): " << ex << endl;
ucrit << myname << "(insert_main_history): " << ex << endl;
}
catch( ... )
{
ulog.crit() << myname << "(insert_main_history): catch ..." << endl;
ucrit << myname << "(insert_main_history): catch ..." << endl;
}
}
//--------------------------------------------------------------------------------------------
......@@ -311,8 +306,7 @@ void DBServer_SQLite::init_dbserver()
if( !db->connect(dbfile,false) )
{
// ostringstream err;
if( ulog.is_crit() )
ulog.crit() << myname
ucrit << myname
<< "(init): DB connection error: "
<< db->error() << endl;
// throw Exception( string(myname+"(init): не смогли создать соединение с БД "+db->error()) );
......@@ -337,8 +331,7 @@ void DBServer_SQLite::createTables( SQLiteInterface *db )
UniXML_iterator it( conf->getNode("Tables") );
if(!it)
{
if( ulog.is_crit() )
ulog.crit() << myname << ": section <Tables> not found.."<< endl;
ucrit << myname << ": section <Tables> not found.."<< endl;
throw Exception();
}
......@@ -350,8 +343,8 @@ void DBServer_SQLite::createTables( SQLiteInterface *db )
ulog[DBLogInfoLevel] << myname << "(createTables): create " << it.getName() << endl;
ostringstream query;
query << "CREATE TABLE " << conf->getProp(it,"name") << "(" << conf->getProp(it,"create") << ")";
if( !db->query(query.str()) && ulog.is_crit() )
ulog.crit() << myname << "(createTables): error: \t\t" << db->error() << endl;
if( !db->query(query.str()) )
ucrit << myname << "(createTables): error: \t\t" << db->error() << endl;
}
}
}
......@@ -364,8 +357,7 @@ void DBServer_SQLite::timerInfo( UniSetTypes::TimerMessage* tm )
{
if( !db->ping() )
{
if( ulog.is_warn() )
ulog.warn() << myname << "(timerInfo): DB lost connection.." << endl;
uwarn << myname << "(timerInfo): DB lost connection.." << endl;
connect_ok = false;
askTimer(DBServer_SQLite::PingTimer,0);
askTimer(DBServer_SQLite::ReconnectTimer,ReconnectTime);
......@@ -392,8 +384,7 @@ void DBServer_SQLite::timerInfo( UniSetTypes::TimerMessage* tm )
askTimer(DBServer_SQLite::PingTimer,PingTime);
}
connect_ok = false;
if( ulog.is_warn() )
ulog.warn() << myname << "(timerInfo): DB no connection.." << endl;
uwarn << myname << "(timerInfo): DB no connection.." << endl;
}
else
init_dbserver();
......@@ -401,8 +392,7 @@ void DBServer_SQLite::timerInfo( UniSetTypes::TimerMessage* tm )
break;
default:
if( ulog.is_warn() )
ulog.warn() << myname << "(timerInfo): Unknown TimerID=" << tm->id << endl;
uwarn << myname << "(timerInfo): Unknown TimerID=" << tm->id << endl;
break;
}
}
......
......@@ -48,7 +48,7 @@ int main(int argc, const char **argv)
IOControl* ic = IOControl::init_iocontrol(argc,argv,shmID);
if( !ic )
{
dlog.crit() << "(iocontrol): init не прошёл..." << endl;
dcrit << "(iocontrol): init не прошёл..." << endl;
return 1;
}
......@@ -69,15 +69,15 @@ int main(int argc, const char **argv)
}
catch(SystemError& err)
{
dlog.crit() << "(iocontrol): " << err << endl;
dcrit << "(iocontrol): " << err << endl;
}
catch(Exception& ex)
{
dlog.crit() << "(iocontrol): " << ex << endl;
dcrit << "(iocontrol): " << ex << endl;
}
catch(...)
{
dlog.crit() << "(iocontrol): catch(...)" << endl;
dcrit << "(iocontrol): catch(...)" << endl;
}
return 1;
......
......@@ -35,15 +35,15 @@ void LProcessor::execute( const string& lfile )
}
catch( LogicException& ex )
{
dlog.crit() << logname << "(execute): " << ex << endl;
dcrit << logname << "(execute): " << ex << endl;
}
catch( Exception& ex )
{
dlog.crit() << logname << "(execute): " << ex << endl;
dcrit << logname << "(execute): " << ex << endl;
}
catch(...)
{
dlog.crit() << logname << "(execute): catch...\n";
dcrit << logname << "(execute): catch...\n";
}
msleep(sleepTime);
}
......@@ -54,12 +54,12 @@ void LProcessor::step()
getInputs();
processing();
setOuts();
}
}
// -------------------------------------------------------------------------
void LProcessor::build( const string& lfile )
{
sch.read(lfile);
// составляем карту внешних входов
// считая, что в поле name записано название датчика
for( Schema::EXTiterator it=sch.extBegin(); it!=sch.extEnd(); ++it )
......@@ -67,7 +67,7 @@ void LProcessor::build( const string& lfile )
UniSetTypes::ObjectId sid = conf->getSensorID(it->name);
if( sid == DefaultObjectId )
{
dlog.crit() << "НЕ НАЙДЕН ИДЕНТИФИКАТОР ДАТЧИКА: " << it->name << endl;
dcrit << "НЕ НАЙДЕН ИДЕНТИФИКАТОР ДАТЧИКА: " << it->name << endl;
continue;
}
......@@ -78,18 +78,18 @@ void LProcessor::build( const string& lfile )
ei.iotype = conf->getIOType(sid);
if( ei.iotype == UniversalIO::UnknownIOType )
{
dlog.crit() << "Unkown iotype for sid=" << sid << "(" << it->name << ")" << endl;
continue;
}
dcrit << "Unkown iotype for sid=" << sid << "(" << it->name << ")" << endl;
continue;
}
extInputs.push_front(ei);
}
for( Schema::OUTiterator it=sch.outBegin(); it!=sch.outEnd(); ++it )
{
UniSetTypes::ObjectId sid = conf->getSensorID(it->name);
if( sid == DefaultObjectId )
{
dlog.crit() << "НЕ НАЙДЕН ИДЕНТИФИКАТОР ВЫХОДА: " << it->name << endl;
dcrit << "НЕ НАЙДЕН ИДЕНТИФИКАТОР ВЫХОДА: " << it->name << endl;
continue;
}
......@@ -99,13 +99,13 @@ void LProcessor::build( const string& lfile )
ei.iotype = conf->getIOType(sid);
if( ei.iotype == UniversalIO::UnknownIOType )
{
dlog.crit() << "Unkown iotype for sid=" << sid << "(" << it->name << ")" << endl;
dcrit << "Unkown iotype for sid=" << sid << "(" << it->name << ")" << endl;
continue;
}
extOuts.push_front(ei);
}
}
// -------------------------------------------------------------------------
/*!
......@@ -147,11 +147,11 @@ void LProcessor::setOuts()
}
catch( Exception& ex )
{
dlog.crit() << "(LProcessor::setOuts): " << ex << endl;
dcrit << "(LProcessor::setOuts): " << ex << endl;
}
catch(...)
{
dlog.crit() << "(LProcessor::setOuts): catch...\n";
dcrit << "(LProcessor::setOuts): catch...\n";
}
}
}
......
......@@ -24,8 +24,7 @@ PassiveLProcessor::PassiveLProcessor( std::string lfile, UniSetTypes::ObjectId o
{
ostringstream err;
err << myname << ": ID not found ('HeartBeat') for " << heart;
if( dlog.is_crit() )
dlog.crit() << myname << "(init): " << err.str() << endl;
dcrit << myname << "(init): " << err.str() << endl;
throw SystemError(err.str());
}
......@@ -52,8 +51,7 @@ void PassiveLProcessor::step()
}
catch(Exception& ex )
{
if( dlog.is_crit() )
dlog.crit() << myname << "(step): (hb) " << ex << std::endl;
dcrit << myname << "(step): (hb) " << ex << std::endl;
}
if( sidHeartBeat!=DefaultObjectId && ptHeartBeat.checkTime() )
......@@ -65,8 +63,7 @@ void PassiveLProcessor::step()
}
catch(Exception& ex)
{
if( dlog.is_crit() )
dlog.crit() << myname << "(step): (hb) " << ex << std::endl;
dcrit << myname << "(step): (hb) " << ex << std::endl;
}
}
......@@ -86,8 +83,7 @@ void PassiveLProcessor::askSensors( UniversalIO::UIOCommand cmd )
}
catch( Exception& ex )
{
if( dlog.is_crit() )
dlog.crit() << myname << "(askSensors): " << ex << endl;
dcrit << myname << "(askSensors): " << ex << endl;
throw SystemError(myname +"(askSensors): do not ask sensors" );
}
}
......@@ -115,8 +111,7 @@ void PassiveLProcessor::sysCommand( UniSetTypes::SystemMessage *sm )
{
if( !shm->waitSMready(smReadyTimeout) )
{
if( dlog.is_crit() )
dlog.crit() << myname << "(ERR): SM not ready. Terminated... " << endl;
dcrit << myname << "(ERR): SM not ready. Terminated... " << endl;
raise(SIGTERM);
return;
}
......@@ -202,11 +197,11 @@ void PassiveLProcessor::setOuts()
}
catch( Exception& ex )
{
dlog.crit() << myname << "(setOuts): " << ex << endl;
dcrit << myname << "(setOuts): " << ex << endl;
}
catch(...)
{
dlog.crit() << myname << "(setOuts): catch...\n";
dcrit << myname << "(setOuts): catch...\n";
}
}
}
......@@ -221,11 +216,11 @@ void PassiveLProcessor::sigterm( int signo )
}
catch( Exception& ex )
{
dlog.crit() << myname << "(sigterm): " << ex << endl;
dcrit << myname << "(sigterm): " << ex << endl;
}
catch(...)
{
dlog.crit() << myname << "(sigterm): catch...\n";
dcrit << myname << "(sigterm): catch...\n";
}
}
}
......@@ -263,7 +258,7 @@ void PassiveLProcessor::processingMessage( UniSetTypes::VoidMessage* msg )
}
catch(Exception& ex)
{
dlog.crit() << myname << "(processingMessage): " << ex << endl;
dcrit << myname << "(processingMessage): " << ex << endl;
}
}
// -----------------------------------------------------------------------------
......@@ -110,8 +110,7 @@ void Schema::extlink( const string& name, Element::ElementID childID, int numIn
// -------------------------------------------------------------------------
Element* Schema::manage( Element* el )
{
if( dlog.is_info() )
dlog.info() << "Schema: manage new element id=" << el->getId()
dinfo << "Schema: manage new element id=" << el->getId()
<< " type=" << el->getType()
<< " inputs=" << el->inCount() << endl;
......
......@@ -23,8 +23,8 @@ void TAND::setIn( int num, bool state )
{
if( it->state == state )
return; // вход не менялся можно вообще прервать проверку
it->state = state;
it->state = state;
break;
}
}
......@@ -47,8 +47,7 @@ void TAND::setIn( int num, bool state )
if( !brk )
myout = true;
if( dlog.is_info() )
dlog.info() << this << ": myout " << myout << endl;
dinfo << this << ": myout " << myout << endl;
if( prev != myout )
Element::setChildOut();
......
......@@ -30,8 +30,7 @@ void TDelay::setIn( int num, bool state )
{
pt.setTiming(0); // reset timer
myout = false;
if( dlog.is_info() )
dlog.info() << this << ": set " << myout << endl;
dinfo << this << ": set " << myout << endl;
if( prev != myout )
Element::setChildOut();
return;
......@@ -44,8 +43,7 @@ void TDelay::setIn( int num, bool state )
{
pt.setTiming(0); // reset timer
myout = true;
if( dlog.is_info() )
dlog.info() << this << ": set " << myout << endl;
dinfo << this << ": set " << myout << endl;
if( prev != myout )
Element::setChildOut();
return;
......@@ -54,8 +52,7 @@ void TDelay::setIn( int num, bool state )
// засекаем, если ещё не установлен таймер
if( !myout && !prev ) // т.е. !myout && prev != myout
{
if( dlog.is_info() )
dlog.info() << this << ": set timer " << delay << " [msec]" << endl;
dinfo << this << ": set timer " << delay << " [msec]" << endl;
pt.setTiming(delay);
}
}
......@@ -66,15 +63,14 @@ void TDelay::tick()
{
myout = true;
pt.setTiming(0); // reset timer
if( dlog.is_info() )
dlog.info() << getType() << "(" << myid << "): TIMER!!!! myout=" << myout << endl;
dinfo << getType() << "(" << myid << "): TIMER!!!! myout=" << myout << endl;
Element::setChildOut();
}
}
// -------------------------------------------------------------------------
bool TDelay::getOut()
{
return myout;
return myout;
}
// -------------------------------------------------------------------------
void TDelay::setDelay( int timeMS )
......
......@@ -22,9 +22,6 @@ void TNOT::setIn( int num, bool state )
bool prev = myout;
myout = !state;
if( dlog.is_info() )
dlog.info() << this << ": myout " << myout << endl;
if( prev != myout )
Element::setChildOut();
}
......
......@@ -29,15 +29,15 @@ TOR::~TOR()
void TOR::setIn( int num, bool state )
{
// cout << getType() << "(" << myid << "): input " << num << " set " << state << endl;
for( InputList::iterator it=ins.begin(); it!=ins.end(); ++it )
{
if( it->num == num )
{
if( it->state == state )
return; // вход не менялся можно вообще прервать проверку
it->state = state;
it->state = state;
break;
}
}
......@@ -60,8 +60,7 @@ void TOR::setIn( int num, bool state )
if( !brk )
myout = false;
if( dlog.is_info() )
dlog.info() << this << ": myout " << myout << endl;
dinfo << this << ": myout " << myout << endl;
if( prev != myout )
Element::setChildOut();
}
......
......@@ -29,7 +29,7 @@ int main(int argc, const char **argv)
string schema = conf->getArgParam("--schema");
if( schema.empty() )
{
dlog.crit() << "schema-file not defined. Use --schema" << endl;
dcrit << "schema-file not defined. Use --schema" << endl;
return 1;
}
......
......@@ -38,7 +38,7 @@ pollThread(0)
prop_prefix = "";
}
dlog.info() << myname << "(init): prop_prefix=" << prop_prefix << endl;
dinfo << myname << "(init): prop_prefix=" << prop_prefix << endl;
UniXML_iterator it(cnode);
......@@ -55,7 +55,7 @@ pollThread(0)
force_disconnect = conf->getArgInt("--" + prefix + "-persistent-connection",it.getProp("persistent_connection")) ? false : true;
dlog.info() << myname << "(init): persisten-connection=" << (!force_disconnect) << endl;
dinfo << myname << "(init): persisten-connection=" << (!force_disconnect) << endl;
if( shm->isLocalwork() )
{
......@@ -103,19 +103,17 @@ ModbusClient* MBTCPMaster::initMB( bool reopen )
mbtcp->setTimeout(recv_timeout);
mbtcp->setSleepPause(sleepPause_usec);
mbtcp->setAfterSendPause(aftersend_pause);
if( dlog.is_info() )
dlog.info() << myname << "(init): ipaddr=" << iaddr << " port=" << port << endl;
if( dlog.debugging(Debug::LEVEL9) )
dinfo << myname << "(init): ipaddr=" << iaddr << " port=" << port << endl;
if( dlog.is_level9() )
mbtcp->setLog(dlog);
}
catch( ModbusRTU::mbException& ex )
{
if( dlog.is_warn() )
dlog.warn() << "(init): " << ex << endl;
dwarn << "(init): " << ex << endl;
}
catch(...)
{
......@@ -182,23 +180,20 @@ MBTCPMaster* MBTCPMaster::init_mbmaster( int argc, const char* const* argv,
string name = conf->getArgParam("--" + prefix + "-name","MBTCPMaster1");
if( name.empty() )
{
if( dlog.debugging(Debug::CRIT) )
dlog.crit() << "(MBTCPMaster): Не задан name'" << endl;
dcrit << "(MBTCPMaster): Не задан name'" << endl;
return 0;
}
ObjectId ID = conf->getObjectID(name);
if( ID == UniSetTypes::DefaultObjectId )
{
if( dlog.debugging(Debug::CRIT) )
dlog.crit() << "(MBTCPMaster): идентификатор '" << name
dcrit << "(MBTCPMaster): идентификатор '" << name
<< "' не найден в конф. файле!"
<< " в секции " << conf->getObjectsSection() << endl;
return 0;
}
if( dlog.is_info() )
dlog.info() << "(MBTCPMaster): name = " << name << "(" << ID << ")" << endl;
dinfo << "(MBTCPMaster): name = " << name << "(" << ID << ")" << endl;
return new MBTCPMaster(ID,icID,ic,prefix);
}
// -----------------------------------------------------------------------------
......@@ -40,8 +40,7 @@ checkThread(0)
prop_prefix = "";
}
if( dlog.is_info() )
dlog.info() << myname << "(init): prop_prefix=" << prop_prefix << endl;
dinfo << myname << "(init): prop_prefix=" << prop_prefix << endl;
UniXML_iterator it(cnode);
......@@ -53,8 +52,7 @@ checkThread(0)
{
ostringstream err;
err << myname << "(init): not found <GateList>";
if( dlog.is_crit() )
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw UniSetTypes::SystemError(err.str());
}
......@@ -62,8 +60,7 @@ checkThread(0)
{
ostringstream err;
err << myname << "(init): empty <GateList> ?!";
if( dlog.is_crit() )
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw UniSetTypes::SystemError(err.str());
}
......@@ -75,8 +72,7 @@ checkThread(0)
{
ostringstream err;
err << myname << "(init): ip='' in <GateList>";
if( dlog.is_crit() )
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw UniSetTypes::SystemError(err.str());
}
......@@ -85,8 +81,7 @@ checkThread(0)
{
ostringstream err;
err << myname << "(init): ERROR: port=''" << sinf.port << " for ip='" << sinf.ip << "' in <GateList>";
if( dlog.is_crit() )
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw UniSetTypes::SystemError(err.str());
}
......@@ -97,8 +92,7 @@ checkThread(0)
{
ostringstream err;
err << myname << "(init): ERROR: Unknown SensorID for '" << it1.getProp("respond") << "' in <GateList>";
if( dlog.is_crit() )
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw UniSetTypes::SystemError(err.str());
}
}
......@@ -117,21 +111,19 @@ checkThread(0)
n << sinf.ip << ":" << sinf.port;
sinf.myname = n.str();
if( dlog.debugging(Debug::LEVEL9) )
if( dlog.is_level9() )
sinf.mbtcp->setLog(dlog);
mblist.push_back(sinf);
if( dlog.is_info() )
dlog.info() << myname << "(init): add slave channel " << sinf.myname << endl;
dinfo << myname << "(init): add slave channel " << sinf.myname << endl;
}
if( mblist.empty() )
{
ostringstream err;
err << myname << "(init): empty <GateList>!";
if( dlog.is_crit() )
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw UniSetTypes::SystemError(err.str());
}
......@@ -234,8 +226,7 @@ bool MBTCPMultiMaster::MBSlaveInfo::init()
{
// ost::Thread::setException(ost::Thread::throwException);
if( dlog.is_info() )
dlog.info() << myname << "(init): connect..." << endl;
dinfo << myname << "(init): connect..." << endl;
mbtcp->connect(ip,port);
mbtcp->setForceDisconnect(force_disconnect);
......@@ -248,22 +239,20 @@ bool MBTCPMultiMaster::MBSlaveInfo::init()
mbtcp->setSleepPause(sleepPause_usec);
mbtcp->setAfterSendPause(aftersend_pause);
if( mbtcp->isConnection() && dlog.is_info() )
dlog.info() << "(init): " << myname << " connect OK" << endl;
if( mbtcp->isConnection() )
dinfo << "(init): " << myname << " connect OK" << endl;
initOK = true;
}
return mbtcp->isConnection();
}
catch( ModbusRTU::mbException& ex )
{
if( dlog.is_warn() )
dlog.warn() << "(init): " << ex << endl;
dwarn << "(init): " << ex << endl;
}
catch(...)
{
if( dlog.is_warn() )
dlog.warn() << "(init): " << myname << " catch ..." << endl;
dwarn << "(init): " << myname << " catch ..." << endl;
}
initOK = false;
......@@ -318,8 +307,7 @@ void MBTCPMultiMaster::check_thread()
try
{
bool r = it->check();
if( dlog.is_info() )
dlog.info() << myname << "(check): " << it->myname << " " << ( r ? "OK" : "FAIL" ) << endl;
dinfo << myname << "(check): " << it->myname << " " << ( r ? "OK" : "FAIL" ) << endl;
try
{
......@@ -331,8 +319,7 @@ void MBTCPMultiMaster::check_thread()
}
catch( Exception& ex )
{
if( dlog.debugging(Debug::CRIT) )
dlog.crit() << myname << "(check): (respond) " << ex << std::endl;
dcrit << myname << "(check): (respond) " << ex << std::endl;
}
catch(...){}
......@@ -382,20 +369,20 @@ MBTCPMultiMaster* MBTCPMultiMaster::init_mbmaster( int argc, const char* const*
string name = conf->getArgParam("--" + prefix + "-name","MBTCPMultiMaster1");
if( name.empty() )
{
dlog.crit() << "(MBTCPMultiMaster): Не задан name'" << endl;
dcrit << "(MBTCPMultiMaster): Не задан name'" << endl;
return 0;
}
ObjectId ID = conf->getObjectID(name);
if( ID == UniSetTypes::DefaultObjectId )
{
dlog.crit() << "(MBTCPMultiMaster): идентификатор '" << name
dcrit << "(MBTCPMultiMaster): идентификатор '" << name
<< "' не найден в конф. файле!"
<< " в секции " << conf->getObjectsSection() << endl;
return 0;
}
dlog.info() << "(MBTCPMultiMaster): name = " << name << "(" << ID << ")" << endl;
dinfo << "(MBTCPMultiMaster): name = " << name << "(" << ID << ")" << endl;
return new MBTCPMultiMaster(ID,icID,ic,prefix);
}
// -----------------------------------------------------------------------------
......@@ -29,7 +29,7 @@ rs_pre_clean(false)
// если "принудительно" задан префикс
// используем его.
{
string p("--" + prefix + "-set-prop-prefix");
string p("--" + prefix + "-set-prop-prefix");
string v = conf->getArgParam(p,"");
if( !v.empty() && v[0] != '-' )
prop_prefix = v;
......@@ -38,7 +38,7 @@ rs_pre_clean(false)
prop_prefix = "";
}
dlog.info() << myname << "(init): prop_prefix=" << prop_prefix << endl;
dinfo << myname << "(init): prop_prefix=" << prop_prefix << endl;
UniXML_iterator it(cnode);
......@@ -108,7 +108,7 @@ ModbusClient* RTUExchange::initMB( bool reopen )
{
if( !reopen )
return mbrtu;
delete mbrtu;
mbrtu = 0;
mb = 0;
......@@ -130,7 +130,7 @@ ModbusClient* RTUExchange::initMB( bool reopen )
mbrtu->setSleepPause(sleepPause_usec);
mbrtu->setAfterSendPause(aftersend_pause);
dlog.info() << myname << "(init): dev=" << devname << " speed=" << ComPort::getSpeed( mbrtu->getSpeed() ) << endl;
dinfo << myname << "(init): dev=" << devname << " speed=" << ComPort::getSpeed( mbrtu->getSpeed() ) << endl;
}
catch( Exception& ex )
{
......@@ -138,7 +138,7 @@ ModbusClient* RTUExchange::initMB( bool reopen )
delete mbrtu;
mbrtu = 0;
dlog.warn() << myname << "(init): " << ex << endl;
dwarn << myname << "(init): " << ex << endl;
}
catch(...)
{
......@@ -146,7 +146,7 @@ ModbusClient* RTUExchange::initMB( bool reopen )
delete mbrtu;
mbrtu = 0;
dlog.info() << myname << "(init): catch...." << endl;
dinfo << myname << "(init): catch...." << endl;
}
mb = mbrtu;
......@@ -204,14 +204,14 @@ void RTUExchange::poll()
bool allNotRespond = true;
ComPort::Speed s = mbrtu->getSpeed();
for( MBExchange::RTUDeviceMap::iterator it1=rmap.begin(); it1!=rmap.end(); ++it1 )
{
RTUDevice* d(it1->second);
if( d->mode_id != DefaultObjectId && d->mode == emSkipExchange )
continue;
if( d->speed != s )
{
s = d->speed;
......@@ -223,12 +223,9 @@ void RTUExchange::poll()
if( !d->rtu )
continue;
if( dlog.debugging(Debug::LEVEL3) )
{
dlog[Debug::LEVEL3] << myname << "(pollRTU188): poll RTU188 "
dlog3 << myname << "(pollRTU188): poll RTU188 "
<< " mbaddr=" << ModbusRTU::addr2str(d->mbaddr)
<< endl;
}
try
{
......@@ -239,22 +236,18 @@ void RTUExchange::poll()
d->resp_real = true;
}
catch( ModbusRTU::mbException& ex )
{
{
if( d->resp_real )
{
if( dlog.debugging(Debug::LEVEL3) )
{
dlog.crit() << myname << "(poll): FAILED ask addr=" << ModbusRTU::addr2str(d->mbaddr)
dlog3 << myname << "(poll): FAILED ask addr=" << ModbusRTU::addr2str(d->mbaddr)
<< " -> " << ex << endl;
}
d->resp_real = false;
}
}
}
else
else
{
if( dlog.debugging(Debug::LEVEL3) )
dlog[Debug::LEVEL3] << myname << "(poll): ask addr=" << ModbusRTU::addr2str(d->mbaddr)
dlog3 << myname << "(poll): ask addr=" << ModbusRTU::addr2str(d->mbaddr)
<< " regs=" << d->regmap.size() << endl;
d->resp_real = false;
......@@ -271,16 +264,14 @@ void RTUExchange::poll()
}
}
catch( ModbusRTU::mbException& ex )
{
{
// if( d->resp_real )
// {
if( dlog.debugging(Debug::LEVEL3) )
{
dlog[Debug::LEVEL3] << myname << "(poll): FAILED ask addr=" << ModbusRTU::addr2str(d->mbaddr)
dlog3 << myname << "(poll): FAILED ask addr=" << ModbusRTU::addr2str(d->mbaddr)
<< " reg=" << ModbusRTU::dat2str(it->second->mbreg)
<< " for sensors: "; print_plist(dlog(Debug::LEVEL3), it->second->slst);
dlog(Debug::LEVEL3) << " err: " << ex << endl;
}
// d->resp_real = false;
// }
}
......@@ -299,7 +290,7 @@ void RTUExchange::poll()
// update SharedMemory...
updateSM();
// check thresholds
for( MBExchange::RTUDeviceMap::iterator it1=rmap.begin(); it1!=rmap.end(); ++it1 )
{
......@@ -311,15 +302,14 @@ void RTUExchange::poll()
IOBase::processingThreshold( &(*i),shm,force);
}
}
if( trReopen.hi(allNotRespond) )
ptReopen.reset();
if( allNotRespond && ptReopen.checkTime() )
{
uniset_mutex_lock l(pollMutex, 300);
if( dlog.is_warn() )
dlog.warn() << myname << ": REOPEN timeout..(" << ptReopen.getInterval() << ")" << endl;
dwarn << myname << ": REOPEN timeout..(" << ptReopen.getInterval() << ")" << endl;
mb = initMB(true);
ptReopen.reset();
......@@ -347,7 +337,7 @@ RTUExchange* RTUExchange::init_rtuexchange( int argc, const char* const* argv, U
return 0;
}
dlog.info() << "(rtuexchange): name = " << name << "(" << ID << ")" << endl;
dinfo << "(rtuexchange): name = " << name << "(" << ID << ")" << endl;
return new RTUExchange(ID,icID,ic,prefix);
}
// -----------------------------------------------------------------------------
......@@ -355,14 +345,14 @@ bool RTUExchange::initDeviceInfo( RTUDeviceMap& m, ModbusRTU::ModbusAddr a, UniX
{
if( !MBExchange::initDeviceInfo(m,a,it) )
return false;
RTUDeviceMap::iterator d = m.find(a);
if( d == m.end() )
{
dlog.warn() << myname << "(initDeviceInfo): not found device for addr=" << ModbusRTU::addr2str(a) << endl;
dwarn << myname << "(initDeviceInfo): not found device for addr=" << ModbusRTU::addr2str(a) << endl;
return false;
}
string s = it.getProp("speed");
if( !s.empty() )
{
......@@ -370,7 +360,7 @@ bool RTUExchange::initDeviceInfo( RTUDeviceMap& m, ModbusRTU::ModbusAddr a, UniX
if( d->second->speed == ComPort::ComSpeed0 )
{
d->second->speed = defSpeed;
dlog.crit() << myname << "(initDeviceInfo): Unknown speed=" << s <<
dcrit << myname << "(initDeviceInfo): Unknown speed=" << s <<
" for addr=" << ModbusRTU::addr2str(a) << endl;
return false;
}
......
......@@ -55,7 +55,7 @@ int main( int argc, const char** argv )
MBTCPMaster* mb = MBTCPMaster::init_mbmaster(argc,argv,shmID);
if( !mb )
{
dlog.crit() << "(mbmaster): init MBTCPMaster failed." << endl;
dcrit << "(mbmaster): init MBTCPMaster failed." << endl;
return 1;
}
......@@ -75,11 +75,11 @@ int main( int argc, const char** argv )
}
catch( Exception& ex )
{
dlog.crit() << "(mbtcpmaster): " << ex << std::endl;
dcrit << "(mbtcpmaster): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << "(mbtcpmaster): catch ..." << std::endl;
dcrit << "(mbtcpmaster): catch ..." << std::endl;
}
while( waitpid(-1, 0, 0) > 0 );
......
......@@ -55,7 +55,7 @@ int main( int argc, const char** argv )
MBTCPMultiMaster* mb = MBTCPMultiMaster::init_mbmaster(argc,argv,shmID);
if( !mb )
{
dlog.crit() << "(mbmaster): init MBTCPMaster failed." << endl;
dcrit << "(mbmaster): init MBTCPMaster failed." << endl;
return 1;
}
......@@ -77,11 +77,11 @@ int main( int argc, const char** argv )
}
catch( Exception& ex )
{
dlog.crit() << "(mbtcpmultimaster): " << ex << std::endl;
dcrit << "(mbtcpmultimaster): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << "(mbtcpmultimaster): catch ..." << std::endl;
dcrit << "(mbtcpmultimaster): catch ..." << std::endl;
}
while( waitpid(-1, 0, 0) > 0 );
......
......@@ -53,7 +53,7 @@ int main( int argc, char** argv )
RTUExchange* rs = RTUExchange::init_rtuexchange(argc,argv,shmID,0,"rs");
if( !rs )
{
dlog.crit() << "(rtuexchange): init не прошёл..." << endl;
dcrit << "(rtuexchange): init не прошёл..." << endl;
return 1;
}
......@@ -75,11 +75,11 @@ int main( int argc, char** argv )
}
catch( Exception& ex )
{
dlog.crit() << "(rtuexchange): " << ex << std::endl;
dcrit << "(rtuexchange): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << "(rtuexchange): catch ..." << std::endl;
dcrit << "(rtuexchange): catch ..." << std::endl;
}
while( waitpid(-1, 0, 0) > 0 );
......
......@@ -60,7 +60,7 @@ int main(int argc, const char **argv)
MBSlave* s = MBSlave::init_mbslave(argc,argv,shmID);
if( !s )
{
dlog.crit() << "(mbslave): init не прошёл..." << endl;
dcrit << "(mbslave): init не прошёл..." << endl;
return 1;
}
......@@ -80,19 +80,19 @@ int main(int argc, const char **argv)
}
catch( SystemError& err )
{
dlog.crit() << "(mbslave): " << err << endl;
dcrit << "(mbslave): " << err << endl;
}
catch( Exception& ex )
{
dlog.crit() << "(mbslave): " << ex << endl;
dcrit << "(mbslave): " << ex << endl;
}
catch( std::exception& e )
{
dlog.crit() << "(mbslave): " << e.what() << endl;
dcrit << "(mbslave): " << e.what() << endl;
}
catch(...)
{
dlog.crit() << "(mbslave): catch(...)" << endl;
dcrit << "(mbslave): catch(...)" << endl;
}
while( waitpid(-1, 0, 0) > 0 );
......
......@@ -17,7 +17,7 @@ UObject_SK(objId,cnode),
shm( new SMInterface(shmId,&ui,objId,ic) ),
prefix(prefix)
{
dlog = log;
mylog = log;
UniXML::iterator it(cnode);
UniXML::iterator it1(cnode);
......@@ -25,8 +25,7 @@ prefix(prefix)
{
ostringstream err;
err << myname << "(init): empty rrd list...";
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str() << endl;
mylog << err.str() << endl;
throw NameNotFound(err.str());
}
......@@ -58,8 +57,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
int lastup = it.getPIntProp("lastup",0);
bool overwrite = it.getPIntProp("overwrite",0);
if( RRDServer::dlog.is_info() )
RRDServer::dlog.info() << myname << "(init): add rrd: file='" << fname
myinfo << myname << "(init): add rrd: file='" << fname
<< " " << ff << "='" << fv
<< "' create='" << cf << "'"
<< " step=" << rrdstep
......@@ -72,7 +70,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): rrd='" << fname << "' Unknown RRA list";
RRDServer::dlog.crit() << err.str();
mycrit << err.str();
throw SystemError(err.str());
}
......@@ -83,8 +81,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): rrd='" << fname << "' Unkown RRA item.. <item rra='...'";
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str();
mycrit << err.str();
throw SystemError(err.str());
}
......@@ -95,8 +92,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): Not found RRA items...";
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str() << endl;
mycrit << err.str() << endl;
throw SystemError(err.str());
}
......@@ -108,8 +104,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): Not found section <sensors>";
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str();
mycrit << err.str();
throw SystemError(err.str());
}
......@@ -118,8 +113,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): section <sensors> empty?!";
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str();
mycrit << err.str();
throw SystemError(err.str());
}
......@@ -138,8 +132,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): Unknown create parameters ('" << cf << "')";
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str();
mycrit << err.str();
throw SystemError(err.str());
}
......@@ -153,8 +146,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): Unknown SensorID for '" << dsname << "'";
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str();
mycrit << err.str();
throw SystemError(err.str());
}
......@@ -166,8 +158,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): Not found RRD items...";
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str() << endl;
mycrit << err.str() << endl;
throw SystemError(err.str());
}
......@@ -187,8 +178,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
// Собственно создаём RRD
if( !overwrite && file_exist(fname) )
{
if( RRDServer::dlog.is_info() )
RRDServer::dlog.info() << myname << "(init): ignore create file='" << fname
myinfo << myname << "(init): ignore create file='" << fname
<< "'. File exist... overwrite=0." << endl;
}
else
......@@ -198,8 +188,7 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
{
ostringstream err;
err << myname << "(init): Can`t create RRD ('" << fname << "'): err: " << string(rrd_get_error());
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str() << endl;
mycrit << err.str() << endl;
throw SystemError(err.str());
}
}
......@@ -215,11 +204,11 @@ void RRDServer::initRRD( xmlNode* cnode, int tmID )
}
/* catch( Exception& ex )
{
RRDServer::dlog.crit() << myname << "(init) " << ex << std::endl;
mycrit << myname << "(init) " << ex << std::endl;
}
catch( ... )
{
RRDServer::dlog.crit() << myname << "(init): catch ..." << std::endl;
mycrit << myname << "(init): catch ..." << std::endl;
}
*/
}
......@@ -240,14 +229,14 @@ RRDServer* RRDServer::init_rrdstorage( int argc, const char* const* argv,
string name = conf->getArgParam("--" + prefix + "-name","RRDServer");
if( name.empty() )
{
UniSetExtensions::dlog.crit() << "(RRDServer): Unknown name. Usage: --" << prefix << "-name" << endl;
dcrit << "(RRDServer): Unknown name. Usage: --" << prefix << "-name" << endl;
return 0;
}
ObjectId ID = conf->getObjectID(name);
if( ID == UniSetTypes::DefaultObjectId )
{
UniSetExtensions::dlog.crit() << "(RRDServer): Not found ID for '" << name
dcrit << "(RRDServer): Not found ID for '" << name
<< " in '" << conf->getObjectsSection() << "' section" << endl;
return 0;
}
......@@ -256,12 +245,11 @@ RRDServer* RRDServer::init_rrdstorage( int argc, const char* const* argv,
xmlNode* cnode = conf->getNode(confname);
if( !cnode )
{
UniSetExtensions::dlog.crit() << "(RRDServer): " << name << "(init): Not found <" + confname + ">" << endl;
dcrit << "(RRDServer): " << name << "(init): Not found <" + confname + ">" << endl;
return 0;
}
if( UniSetExtensions::dlog.is_info() )
UniSetExtensions::dlog.info() << "(RRDServer): name = " << name << "(" << ID << ")" << endl;
dinfo << "(RRDServer): name = " << name << "(" << ID << ")" << endl;
return new RRDServer(ID,cnode,icID,ic,prefix);
}
// -----------------------------------------------------------------------------
......@@ -279,8 +267,7 @@ void RRDServer::askSensors( UniversalIO::UIOCommand cmd )
}
catch( std::exception& ex )
{
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << myname << "(askSensors): " << ex.what() << endl;
mycrit << myname << "(askSensors): " << ex.what() << endl;
}
}
}
......@@ -299,8 +286,7 @@ void RRDServer::sysCommand( UniSetTypes::SystemMessage* sm )
}
catch( std::exception& ex )
{
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << myname << "(askTimer): " << ex.what() << endl;
mycrit << myname << "(askTimer): " << ex.what() << endl;
}
}
}
......@@ -330,8 +316,7 @@ void RRDServer::timerInfo( UniSetTypes::TimerMessage* tm )
for( DSMap::iterator s=it->dsmap.begin(); s!=it->dsmap.end(); ++s )
v << ":" << s->second.value;
if( RRDServer::dlog.is_info() )
RRDServer::dlog.info() << myname << "(update): '" << it->filename << "' " << v.str() << endl;
myinfo << myname << "(update): '" << it->filename << "' " << v.str() << endl;
rrd_clear_error();
const char* argv = v.str().c_str();
......@@ -339,8 +324,7 @@ void RRDServer::timerInfo( UniSetTypes::TimerMessage* tm )
{
ostringstream err;
err << myname << "(update): Can`t update RRD ('" << it->filename << "'): err: " << string(rrd_get_error());
if( RRDServer::dlog.is_crit() )
RRDServer::dlog.crit() << err.str() << endl;
mycrit << err.str() << endl;
}
break;
......
......@@ -54,7 +54,7 @@ int main( int argc, const char** argv )
RRDServer* db = RRDServer::init_rrdstorage(argc,argv,shmID);
if( !db )
{
dlog.crit() << "(rrdstorage): init не прошёл..." << endl;
dcrit << "(rrdstorage): init не прошёл..." << endl;
return 1;
}
......@@ -73,11 +73,11 @@ int main( int argc, const char** argv )
}
catch( UniSetTypes::Exception& ex )
{
dlog.crit() << "(rrdstorage): " << ex << std::endl;
dcrit << "(rrdstorage): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << "(rrdstorage): catch ..." << std::endl;
dcrit << "(rrdstorage): catch ..." << std::endl;
}
return 1;
......
......@@ -54,7 +54,7 @@ int main( int argc, const char** argv )
SMDBServer* db = SMDBServer::init_smdbserver(argc,argv,shmID);
if( !db )
{
dlog.crit() << "(smdbserver): init не прошёл..." << endl;
dcrit << "(smdbserver): init не прошёл..." << endl;
return 1;
}
......@@ -73,11 +73,11 @@ int main( int argc, const char** argv )
}
catch( Exception& ex )
{
dlog.crit() << "(smdbserver): " << ex << std::endl;
dcrit << "(smdbserver): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << "(smdbserver): catch ..." << std::endl;
dcrit << "(smdbserver): catch ..." << std::endl;
}
return 1;
......
......@@ -50,7 +50,7 @@ a_cache_init_ok(false)
s << "R(" << setw(15) << s_host << ":" << setw(4) << port << ")";
myname = s.str();
}
ost::Thread::setException(ost::Thread::throwException);
try
{
......@@ -64,14 +64,14 @@ a_cache_init_ok(false)
{
ostringstream s;
s << myname << ": " << e.what();
dlog.crit() << s.str() << std::endl;
dcrit << s.str() << std::endl;
throw SystemError(s.str());
}
catch( ... )
{
ostringstream s;
s << myname << ": catch...";
dlog.crit() << s.str() << std::endl;
dcrit << s.str() << std::endl;
throw SystemError(s.str());
}
......@@ -144,7 +144,7 @@ void UNetReceiver::setLostPacketsID( UniSetTypes::ObjectId id )
void UNetReceiver::setLockUpdate( bool st )
{
uniset_rwmutex_wrlock l(lockMutex);
lockUpdate = st;
lockUpdate = st;
if( !st )
ptPrepare.reset();
}
......@@ -152,8 +152,8 @@ void UNetReceiver::setLockUpdate( bool st )
void UNetReceiver::resetTimeout()
{
uniset_rwmutex_wrlock l(tmMutex);
ptRecvTimeout.reset();
trTimeout.change(false);
ptRecvTimeout.reset();
trTimeout.change(false);
}
// -----------------------------------------------------------------------------
void UNetReceiver::start()
......@@ -177,11 +177,11 @@ void UNetReceiver::update()
}
catch( UniSetTypes::Exception& ex)
{
dlog.crit() << myname << "(update): " << ex << std::endl;
dcrit << myname << "(update): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << myname << "(update): catch ..." << std::endl;
dcrit << myname << "(update): catch ..." << std::endl;
}
if( sidRespond!=DefaultObjectId )
......@@ -193,7 +193,7 @@ void UNetReceiver::update()
}
catch(Exception& ex)
{
dlog.crit() << myname << "(step): (respond) " << ex << std::endl;
dcrit << myname << "(step): (respond) " << ex << std::endl;
}
}
......@@ -205,10 +205,10 @@ void UNetReceiver::update()
}
catch(Exception& ex)
{
dlog.crit() << myname << "(step): (lostPackets) " << ex << std::endl;
dcrit << myname << "(step): (lostPackets) " << ex << std::endl;
}
}
msleep(updatepause);
}
}
......@@ -286,7 +286,7 @@ void UNetReceiver::real_update()
ItemInfo& ii(d_icache[i]);
if( ii.id != id )
{
dlog.warn() << myname << "(update): reinit cache for sid=" << id << endl;
dwarn << myname << "(update): reinit cache for sid=" << id << endl;
ii.id = id;
shm->initIterator(ii.ioit);
}
......@@ -302,11 +302,11 @@ void UNetReceiver::real_update()
}
catch( UniSetTypes::Exception& ex)
{
dlog.crit() << myname << "(update): " << ex << std::endl;
dcrit << myname << "(update): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << myname << "(update): catch ..." << std::endl;
dcrit << myname << "(update): catch ..." << std::endl;
}
}
......@@ -319,7 +319,7 @@ void UNetReceiver::real_update()
ItemInfo& ii(a_icache[i]);
if( ii.id != d.id )
{
dlog.warn() << myname << "(update): reinit cache for sid=" << d.id << endl;
dwarn << myname << "(update): reinit cache for sid=" << d.id << endl;
ii.id = d.id;
shm->initIterator(ii.ioit);
}
......@@ -335,11 +335,11 @@ void UNetReceiver::real_update()
}
catch( UniSetTypes::Exception& ex)
{
dlog.crit() << myname << "(update): " << ex << std::endl;
dcrit << myname << "(update): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << myname << "(update): catch ..." << std::endl;
dcrit << myname << "(update): catch ..." << std::endl;
}
}
}
......@@ -356,8 +356,7 @@ void UNetReceiver::stop()
// -----------------------------------------------------------------------------
void UNetReceiver::receive()
{
if( dlog.is_info() )
dlog.info() << myname << ": ******************* receive start" << endl;
dinfo << myname << ": ******************* receive start" << endl;
{
uniset_rwmutex_wrlock l(tmMutex);
......@@ -377,18 +376,15 @@ void UNetReceiver::receive()
}
catch( UniSetTypes::Exception& ex)
{
if( dlog.is_warn() )
dlog.warn() << myname << "(receive): " << ex << std::endl;
dwarn << myname << "(receive): " << ex << std::endl;
}
catch( std::exception& e )
{
if( dlog.is_warn() )
dlog.warn() << myname << "(receive): " << e.what()<< std::endl;
dwarn << myname << "(receive): " << e.what()<< std::endl;
}
catch(...)
{
if( dlog.is_warn() )
dlog.warn() << myname << "(receive): catch ..." << std::endl;
dwarn << myname << "(receive): catch ..." << std::endl;
}
// делаем через промежуточную переменную
......@@ -397,7 +393,7 @@ void UNetReceiver::receive()
uniset_rwmutex_rlock l(tmMutex);
tout = ptRecvTimeout.checkTime();
}
// только если "режим подготовки закончился, то можем генерировать "события"
if( ptPrepare.checkTime() && trTimeout.change(tout) )
{
......@@ -410,8 +406,7 @@ void UNetReceiver::receive()
msleep(recvpause);
}
if( dlog.is_info() )
dlog.info() << myname << ": ************* receive FINISH **********" << endl;
dinfo << myname << ": ************* receive FINISH **********" << endl;
}
// -----------------------------------------------------------------------------
bool UNetReceiver::recv()
......@@ -424,7 +419,7 @@ bool UNetReceiver::recv()
size_t sz = UniSetUDP::UDPMessage::getMessage(pack,r_buf);
if( sz == 0 )
{
dlog.crit() << myname << "(receive): FAILED RECEIVE DATA ret=" << ret << endl;
dcrit << myname << "(receive): FAILED RECEIVE DATA ret=" << ret << endl;
return false;
}
......@@ -439,7 +434,7 @@ bool UNetReceiver::recv()
// Обычно "кольцевой". Т.е. если не успели обработать и "вынуть" из буфера информацию.. он будет переписан новыми данными
if( waitClean )
{
dlog.crit() << myname << "(receive): reset qtmp.." << endl;
dcrit << myname << "(receive): reset qtmp.." << endl;
while( !qtmp.empty() )
qtmp.pop();
}
......@@ -510,7 +505,7 @@ void UNetReceiver::initDCache( UniSetUDP::UDPMessage& pack, bool force )
if( !force && pack.dcount == d_icache.size() )
return;
dlog.info() << myname << ": init icache.." << endl;
dinfo << myname << ": init icache.." << endl;
d_cache_init_ok = true;
d_icache.resize(pack.dcount);
......@@ -532,7 +527,7 @@ void UNetReceiver::initACache( UniSetUDP::UDPMessage& pack, bool force )
if( !force && pack.acount == a_icache.size() )
return;
dlog.info() << myname << ": init icache.." << endl;
dinfo << myname << ": init icache.." << endl;
a_cache_init_ok = true;
a_icache.resize(pack.acount);
......
......@@ -31,11 +31,10 @@ s_thr(0)
// определяем фильтр
// s_field = conf->getArgParam("--udp-filter-field");
// s_fvalue = conf->getArgParam("--udp-filter-value");
dlog.info() << myname << "(init): read filter-field='" << s_field
dinfo << myname << "(init): read filter-field='" << s_field
<< "' filter-value='" << s_fvalue << "'" << endl;
if( dlog.is_info() )
dlog.info() << "(UNetSender): UDP set to " << s_host << ":" << port << endl;
dinfo << "(UNetSender): UDP set to " << s_host << ":" << port << endl;
ost::Thread::setException(ost::Thread::throwException);
try
......@@ -47,14 +46,14 @@ s_thr(0)
{
ostringstream s;
s << myname << ": " << e.what();
dlog.crit() << s.str() << std::endl;
dcrit << s.str() << std::endl;
throw SystemError(s.str());
}
catch( ... )
{
ostringstream s;
s << myname << ": catch...";
dlog.crit() << s.str() << std::endl;
dcrit << s.str() << std::endl;
throw SystemError(s.str());
}
......@@ -65,7 +64,7 @@ s_thr(0)
{
readConfiguration();
dlist.resize(maxItem);
dlog.info() << myname << "(init): dlist size = " << dlist.size() << endl;
dinfo << myname << "(init): dlist size = " << dlist.size() << endl;
}
else
ic->addReadItem( sigc::mem_fun(this,&UNetSender::readItem) );
......@@ -130,18 +129,18 @@ void UNetSender::updateItem( DMap::iterator& it, long value )
void UNetSender::send()
{
dlist.resize(maxItem);
dlog.info() << myname << "(send): dlist size = " << dlist.size() << endl;
dinfo << myname << "(send): dlist size = " << dlist.size() << endl;
/*
ost::IPV4Broadcast h = s_host.c_str();
try
{
{
udp->setPeer(h,port);
}
catch( ost::SockException& e )
{
ostringstream s;
s << e.getString() << ": " << e.getSystemErrorString();
dlog.crit() << myname << "(poll): " << s.str() << endl;
dcrit << myname << "(poll): " << s.str() << endl;
throw SystemError(s.str());
}
*/
......@@ -156,25 +155,25 @@ void UNetSender::send()
}
catch( ost::SockException& e )
{
dlog.warn() << myname << "(send): " << e.getString() << endl;
dwarn << myname << "(send): " << e.getString() << endl;
}
catch( UniSetTypes::Exception& ex)
{
dlog.warn() << myname << "(send): " << ex << std::endl;
dwarn << myname << "(send): " << ex << std::endl;
}
catch( std::exception& e )
{
dlog.warn() << myname << "(send): " << e.what() << std::endl;
dwarn << myname << "(send): " << e.what() << std::endl;
}
catch(...)
{
dlog.warn() << myname << "(send): catch ..." << std::endl;
dwarn << myname << "(send): catch ..." << std::endl;
}
msleep(sendpause);
}
dlog.info() << "************* execute FINISH **********" << endl;
dinfo << "************* execute FINISH **********" << endl;
}
// -----------------------------------------------------------------------------
void UNetSender::real_send()
......@@ -191,7 +190,7 @@ void UNetSender::real_send()
mypack.transport_msg(s_msg);
size_t ret = udp->send( (char*)s_msg.data, s_msg.len );
if( ret < s_msg.len )
dlog.crit() << myname << "(real_send): FAILED ret=" << ret << " < sizeof=" << s_msg.len << endl;
dcrit << myname << "(real_send): FAILED ret=" << ret << " < sizeof=" << s_msg.len << endl;
}
// -----------------------------------------------------------------------------
void UNetSender::stop()
......@@ -245,7 +244,7 @@ bool UNetSender::initItem( UniXML_iterator& it )
string sname( it.getProp("name") );
string tid(it.getProp("id"));
ObjectId sid;
if( !tid.empty() )
{
......@@ -258,8 +257,7 @@ bool UNetSender::initItem( UniXML_iterator& it )
if( sid == DefaultObjectId )
{
if( dlog )
dlog.crit() << myname << "(readItem): ID not found for "
dcrit << myname << "(readItem): ID not found for "
<< sname << endl;
return false;
}
......@@ -269,7 +267,7 @@ bool UNetSender::initItem( UniXML_iterator& it )
if( p.iotype == UniversalIO::UnknownIOType )
{
dlog.crit() << myname << "(readItem): Unknown iotype for sid=" << sid << endl;
dcrit << myname << "(readItem): Unknown iotype for sid=" << sid << endl;
return false;
}
......@@ -280,8 +278,8 @@ bool UNetSender::initItem( UniXML_iterator& it )
p.pack_ind = mypack.addDData(sid,0);
if ( p.pack_ind >= UniSetUDP::MaxDCount )
{
dlog.crit() << myname
<< "(readItem): OVERFLOW! MAX UDP DIGITAL DATA LIMIT! max="
dcrit << myname
<< "(readItem): OVERFLOW! MAX UDP DIGITAL DATA LIMIT! max="
<< UniSetUDP::MaxDCount << endl;
raise(SIGTERM);
......@@ -293,8 +291,8 @@ bool UNetSender::initItem( UniXML_iterator& it )
p.pack_ind = mypack.addAData(sid,0);
if ( p.pack_ind >= UniSetUDP::MaxACount )
{
dlog.crit() << myname
<< "(readItem): OVERFLOW! MAX UDP ANALOG DATA LIMIT! max="
dcrit << myname
<< "(readItem): OVERFLOW! MAX UDP ANALOG DATA LIMIT! max="
<< UniSetUDP::MaxACount << endl;
raise(SIGTERM);
return false;
......@@ -307,8 +305,7 @@ bool UNetSender::initItem( UniXML_iterator& it )
dlist[maxItem] = p;
maxItem++;
if( dlog.is_info() )
dlog.info() << myname << "(initItem): add " << p << endl;
dinfo << myname << "(initItem): add " << p << endl;
return true;
}
......
......@@ -52,7 +52,7 @@ int main( int argc, const char** argv )
UNetExchange* unet = UNetExchange::init_unetexchange(argc,argv,shmID);
if( !unet )
{
dlog.crit() << "(unetexchange): init failed.." << endl;
dcrit << "(unetexchange): init failed.." << endl;
return 1;
}
......@@ -72,11 +72,11 @@ int main( int argc, const char** argv )
}
catch( Exception& ex )
{
dlog.crit() << "(unetexchange): " << ex << std::endl;
dcrit << "(unetexchange): " << ex << std::endl;
}
catch(...)
{
dlog.crit() << "(unetexchange): catch ..." << std::endl;
dcrit << "(unetexchange): catch ..." << std::endl;
}
while( waitpid(-1, 0, 0) > 0 );
......
......@@ -36,18 +36,18 @@ smReadyTimeout(15000)
s_field = conf->getArgParam("--" + prefix + "-filter-field");
s_fvalue = conf->getArgParam("--" + prefix + "-filter-value");
dlog.info() << myname << "(init): read fileter-field='" << s_field
dinfo << myname << "(init): read fileter-field='" << s_field
<< "' filter-value='" << s_fvalue << "'" << endl;
polltime = conf->getArgInt("--" + prefix + "-polltime",it.getProp("polltime"));
if( polltime <= 0 )
polltime = 200;
dlog.info() << myname << "(init): polltime=" << polltime << endl;
dinfo << myname << "(init): polltime=" << polltime << endl;
int updatetime = conf->getArgInt("--" + prefix + "-updatetime",it.getProp("updatetime"));
if( updatetime <= 0 )
updatetime = 200;
dlog.info() << myname << "(init): updatetime=" << polltime << endl;
dinfo << myname << "(init): updatetime=" << polltime << endl;
ptUpdate.setTiming(updatetime);
......@@ -57,7 +57,7 @@ smReadyTimeout(15000)
else if( smReadyTimeout < 0 )
smReadyTimeout = UniSetTimer::WaitUpTime;
dlog.info() << myname << "(init): smReadyTimeout=" << smReadyTimeout << endl;
dinfo << myname << "(init): smReadyTimeout=" << smReadyTimeout << endl;
if( it.goChildren() )
{
......@@ -97,7 +97,7 @@ smReadyTimeout(15000)
ni.node = node;
ni.sidConnection = conf->getSensorID(it.getProp("sid_connection"));
dlog.info() << myname << ": add point " << n << ":" << n1 << endl;
dinfo << myname << ": add point " << n << ":" << n1 << endl;
nlst.push_back(ni);
}
}
......@@ -150,23 +150,21 @@ void UniExchange::execute()
bool ok = false;
try
{
if( dlog.is_info() )
dlog.info() << myname << ": connect to id=" << it->id << " node=" << it->node << endl;
dinfo << myname << ": connect to id=" << it->id << " node=" << it->node << endl;
IOController_i::ShortMapSeq_var sseq = ui.getSensors( it->id, it->node );
ok = true;
if( dlog.is_info() )
dlog.info() << myname << " update sensors from id=" << it->id << " node=" << it->node << endl;
dinfo << myname << " update sensors from id=" << it->id << " node=" << it->node << endl;
it->update(sseq,shm);
}
catch( Exception& ex )
{
dlog.info() << myname << "(execute): " << ex << endl;
dwarn << myname << "(execute): " << ex << endl;
}
catch( ... )
{
dlog.info() << myname << "(execute): catch ..." << endl;
dwarn << myname << "(execute): catch ..." << endl;
}
if( it->sidConnection != DefaultObjectId )
......@@ -177,15 +175,14 @@ void UniExchange::execute()
}
catch(...)
{
if( dlog.is_crit() )
dlog.crit()<< myname << "(execute): sensor not avalible "
dcrit << myname << "(execute): sensor not avalible "
<< conf->oind->getNameById( it->sidConnection)
<< endl;
}
}
if( !ok && dlog.is_info() )
dlog.info() << myname << ": ****** cannot connect with node=" << it->node << endl;
if( !ok )
dinfo << myname << ": ****** cannot connect with node=" << it->node << endl;
}
if( ptUpdate.checkTime() )
......@@ -234,11 +231,11 @@ void UniExchange::NetNodeInfo::update( IOController_i::ShortMapSeq_var& map, SMI
}
catch( Exception& ex )
{
dlog.info() << "(update): " << ex << endl;
dwarn << "(update): " << ex << endl;
}
catch( ... )
{
dlog.info() << "(update): catch ..." << endl;
dwarn << "(update): catch ..." << endl;
}
}
}
......@@ -278,11 +275,11 @@ void UniExchange::updateLocalData()
}
catch( Exception& ex )
{
dlog.warn() << "(update): " << ex << endl;
dwarn << "(update): " << ex << endl;
}
catch( ... )
{
dlog.warn() << "(update): catch ..." << endl;
dwarn << "(update): catch ..." << endl;
}
}
......@@ -443,8 +440,7 @@ bool UniExchange::initItem( UniXML_iterator& it )
if( i.id == DefaultObjectId )
{
if( dlog )
dlog.crit() << myname << "(initItem): Unknown ID for "
dcrit << myname << "(initItem): Unknown ID for "
<< it.getProp("name") << endl;
return false;
}
......@@ -452,8 +448,7 @@ bool UniExchange::initItem( UniXML_iterator& it )
i.type = UniSetTypes::getIOType(it.getProp("iotype"));
if( i.type == UniversalIO::UnknownIOType )
{
if( dlog )
dlog.crit() << myname << "(initItem): Unknown iotype= "
dcrit << myname << "(initItem): Unknown iotype= "
<< it.getProp("iotype") << " for " << it.getProp("name") << endl;
return false;
}
......
......@@ -31,4 +31,21 @@ namespace UniSetExtensions
extern DebugStream dlog;
}
// -------------------------------------------------------------------------
// "синтаксический сахар"..для логов
#define dinfo if( UniSetExtensions::dlog.debugging(Debug::INFO) ) UniSetExtensions::dlog
#define dwarn if( UniSetExtensions::dlog.debugging(Debug::WARN) ) UniSetExtensions::dlog
#define dcrit if( UniSetExtensions::dlog.debugging(Debug::CRIT) ) UniSetExtensions::dlog
#define dlog1 if( UniSetExtensions::dlog.debugging(Debug::LEVEL1) ) UniSetExtensions::dlog
#define dlog2 if( UniSetExtensions::dlog.debugging(Debug::LEVEL2) ) UniSetExtensions::dlog
#define dlog3 if( UniSetExtensions::dlog.debugging(Debug::LEVEL3) ) UniSetExtensions::dlog
#define dlog4 if( UniSetExtensions::dlog.debugging(Debug::LEVEL4) ) UniSetExtensions::dlog
#define dlog5 if( UniSetExtensions::dlog.debugging(Debug::LEVEL5) ) UniSetExtensions::dlog
#define dlog6 if( UniSetExtensions::dlog.debugging(Debug::LEVEL6) ) UniSetExtensions::dlog
#define dlog7 if( UniSetExtensions::dlog.debugging(Debug::LEVEL7) ) UniSetExtensions::dlog
#define dlog8 if( UniSetExtensions::dlog.debugging(Debug::LEVEL8) ) UniSetExtensions::dlog
#define dlog9 if( UniSetExtensions::dlog.debugging(Debug::LEVEL9) ) UniSetExtensions::dlog
#define dlogsys if( UniSetExtensions::dlog.debugging(Debug::SYSTEM) ) UniSetExtensions::dlog
#define dlogrep if( UniSetExtensions::dlog.debugging(Debug::REPOSITORY) ) UniSetExtensions::dlog
// -------------------------------------------------------------------------
#endif // Extensions_H_
// -------------------------------------------------------------------------
......@@ -3,12 +3,12 @@
/*
DO NOT EDIT THIS FILE. IT IS AUTOGENERATED FILE.
ALL YOUR CHANGES WILL BE LOST.
НЕ РЕДАКТИРУЙТЕ ЭТОТ ФАЙЛ. ЭТОТ ФАЙЛ СОЗДАН АВТОМАТИЧЕСКИ.
ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ.
*/
*/
// --------------------------------------------------------------------------
// generate timestamp: 2013-12-17+04:00
// generate timestamp: 2014-01-23+04:00
// -----------------------------------------------------------------------------
#ifndef UObject_SK_H_
#define UObject_SK_H_
......@@ -21,106 +21,120 @@
#include "DebugStream.h"
// -----------------------------------------------------------------------------
class UObject_SK:
public UniSetObject,
public LT_Object
public UniSetObject,
public LT_Object
{
public:
UObject_SK( UniSetTypes::ObjectId id, xmlNode* node=UniSetTypes::conf->getNode("UObject"), const std::string& argprefix="" );
UObject_SK();
virtual ~UObject_SK();
public:
UObject_SK( UniSetTypes::ObjectId id, xmlNode* node=UniSetTypes::conf->getNode("UObject"), const std::string& argprefix="" );
UObject_SK();
virtual ~UObject_SK();
bool alarm( UniSetTypes::ObjectId sid, bool state );
long getValue( UniSetTypes::ObjectId sid );
void setValue( UniSetTypes::ObjectId sid, long value );
void askSensor( UniSetTypes::ObjectId sid, UniversalIO::UIOCommand, UniSetTypes::ObjectId node = UniSetTypes::conf->getLocalNode() );
void updateValues();
void setMsg( UniSetTypes::ObjectId code, bool state );
bool alarm( UniSetTypes::ObjectId sid, bool state );
long getValue( UniSetTypes::ObjectId sid );
void setValue( UniSetTypes::ObjectId sid, long value );
void askSensor( UniSetTypes::ObjectId sid, UniversalIO::UIOCommand, UniSetTypes::ObjectId node = UniSetTypes::conf->getLocalNode() );
void updateValues();
void setMsg( UniSetTypes::ObjectId code, bool state );
DebugStream mylog;
void init_mylog( DebugStream& d );
DebugStream dlog;
void init_dlog(DebugStream& dlog);
// "синтаксический сахар"..для логов
#define myinfo if( mylog.debugging(Debug::INFO) ) mylog
#define mywarn if( mylog.debugging(Debug::WARN) ) mylog
#define mycrit if( mylog.debugging(Debug::CRIT) ) mylog
#define mylog1 if( mylog.debugging(Debug::LEVEL1) ) mylog
#define mylog2 if( mylog.debugging(Debug::LEVEL2) ) mylog
#define mylog3 if( mylog.debugging(Debug::LEVEL3) ) mylog
#define mylog4 if( mylog.debugging(Debug::LEVEL4) ) mylog
#define mylog5 if( mylog.debugging(Debug::LEVEL5) ) mylog
#define mylog6 if( mylog.debugging(Debug::LEVEL6) ) mylog
#define mylog7 if( mylog.debugging(Debug::LEVEL7) ) mylog
#define mylog8 if( mylog.debugging(Debug::LEVEL8) ) mylog
#define mylog9 if( mylog.debugging(Debug::LEVEL9) ) mylog
// Используемые идентификаторы
// Используемые идентификаторы
// Используемые идентификаторы сообщений
// Используемые идентификаторы сообщений
// Текущее значение и предыдущее значение
// Текущее значение и предыдущее значение
// --- public variables ---
// --- public variables ---
// --- end of public variables ---
// --- end of public variables ---
protected:
// --- protected variables ---
protected:
// --- protected variables ---
// ---- end of protected variables ----
// ---- end of protected variables ----
virtual void callback();
virtual void processingMessage( UniSetTypes::VoidMessage* msg );
virtual void sysCommand( UniSetTypes::SystemMessage* sm );
virtual void askSensors( UniversalIO::UIOCommand cmd ){}
virtual void sensorInfo( UniSetTypes::SensorMessage* sm ){}
virtual void timerInfo( UniSetTypes::TimerMessage* tm ){}
virtual void sigterm( int signo );
virtual bool activateObject();
virtual void testMode( bool state );
void updatePreviousValues();
void checkSensors();
void updateOutputs( bool force );
virtual void callback();
virtual void processingMessage( UniSetTypes::VoidMessage* msg );
virtual void sysCommand( UniSetTypes::SystemMessage* sm );
virtual void askSensors( UniversalIO::UIOCommand cmd ){}
virtual void sensorInfo( UniSetTypes::SensorMessage* sm ){}
virtual void timerInfo( UniSetTypes::TimerMessage* tm ){}
virtual void sigterm( int signo );
virtual bool activateObject();
virtual void testMode( bool state );
void updatePreviousValues();
void checkSensors();
void updateOutputs( bool force );
void preAskSensors( UniversalIO::UIOCommand cmd );
void preSensorInfo( UniSetTypes::SensorMessage* sm );
void preTimerInfo( UniSetTypes::TimerMessage* tm );
void waitSM( int wait_msec, UniSetTypes::ObjectId testID = UniSetTypes::DefaultObjectId );
void preAskSensors( UniversalIO::UIOCommand cmd );
void preSensorInfo( UniSetTypes::SensorMessage* sm );
void preTimerInfo( UniSetTypes::TimerMessage* tm );
void waitSM( int wait_msec, UniSetTypes::ObjectId testID = UniSetTypes::DefaultObjectId );
void resetMsg();
Trigger trResetMsg;
PassiveTimer ptResetMsg;
int resetMsgTime;
void resetMsg();
Trigger trResetMsg;
PassiveTimer ptResetMsg;
int resetMsgTime;
// Выполнение очередного шага программы
virtual void step()=0;
// Выполнение очередного шага программы
virtual void step()=0;
int sleep_msec; /*!< пауза между итерациями */
bool active;
int sleep_msec; /*!< пауза между итерациями */
bool active;
UniSetTypes::ObjectId smTestID; /*!< идентификатор датчика для тестирования готовности SM */
UniSetTypes::ObjectId smTestID; /*!< идентификатор датчика для тестирования готовности SM */
// управление датчиком "сердцебиения"
PassiveTimer ptHeartBeat; /*! < период "сердцебиения" */
UniSetTypes::ObjectId idHeartBeat; /*! < идентификатор датчика (AI) "сердцебиения" */
int maxHeartBeat; /*! < сохраняемое значение */
// управление датчиком "сердцебиения"
PassiveTimer ptHeartBeat; /*! < период "сердцебиения" */
UniSetTypes::ObjectId idHeartBeat; /*! < идентификатор датчика (AI) "сердцебиения" */
int maxHeartBeat; /*! < сохраняемое значение */
xmlNode* confnode;
/*! получить числовое свойство из конф. файла по привязанной confnode */
int getIntProp(const std::string& name) { return UniSetTypes::conf->getIntProp(confnode, name); }
/*! получить текстовое свойство из конф. файла по привязанной confnode */
inline const std::string getProp(const std::string& name) { return UniSetTypes::conf->getProp(confnode, name); }
xmlNode* confnode;
/*! получить числовое свойство из конф. файла по привязанной confnode */
int getIntProp(const std::string& name) { return UniSetTypes::conf->getIntProp(confnode, name); }
/*! получить текстовое свойство из конф. файла по привязанной confnode */
inline const std::string getProp(const std::string& name) { return UniSetTypes::conf->getProp(confnode, name); }
int smReadyTimeout; /*!< время ожидания готовности SM */
bool activated;
int activateTimeout; /*!< время ожидания готовности UniSetObject к работе */
PassiveTimer ptStartUpTimeout; /*!< время на блокировку обработки WatchDog, если недавно был StartUp */
int askPause; /*!< пауза между неудачными попытками заказать датчики */
int smReadyTimeout; /*!< время ожидания готовности SM */
bool activated;
int activateTimeout; /*!< время ожидания готовности UniSetObject к работе */
PassiveTimer ptStartUpTimeout; /*!< время на блокировку обработки WatchDog, если недавно был StartUp */
int askPause; /*!< пауза между неудачными попытками заказать датчики */
IOController_i::SensorInfo si;
IOController_i::SensorInfo si;
private:
private:
// --- private variables ---
// --- end of private variables ---
// --- private variables ---
// --- end of private variables ---
bool end_private; // вспомогательное поле (для внутреннего использования при генерировании кода)
bool end_private; // вспомогательное поле (для внутреннего использования при генерировании кода)
};
// -----------------------------------------------------------------------------
......
......@@ -24,7 +24,7 @@ namespace UniSetExtensions
{
ostringstream err;
err << ": Unknown ID for '" << sname << "'" << endl;
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw SystemError(err.str());
}
......@@ -53,11 +53,10 @@ namespace UniSetExtensions
if( heartBeatTime <= 0 )
{
heartBeatTime = 0;
dlog.warn() << "(getHeartBeatTime): механизм 'HEARTBEAT' ОТКЛЮЧЁН!" << endl;
dwarn << "(getHeartBeatTime): механизм 'HEARTBEAT' ОТКЛЮЧЁН!" << endl;
}
if( dlog.is_info() )
dlog.info() << "(getHeartBeatTime): heartbeat time = " << heartBeatTime << endl;
dinfo << "(getHeartBeatTime): heartbeat time = " << heartBeatTime << endl;
return heartBeatTime;
}
......@@ -114,7 +113,7 @@ namespace UniSetExtensions
{
ostringstream err;
err << "(buildCalibrationDiagram): НЕ НАЙДЕН корневой узел для калибровочных диаграмм";
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw SystemError( err.str());
}
......@@ -123,7 +122,7 @@ namespace UniSetExtensions
{
ostringstream err;
err << "(buildCalibrationDiagram): НЕ НАЙДЕНА калибровочная диаграмма '" << dname << "'";
dlog.crit() << err.str() << endl;
dcrit << err.str() << endl;
throw SystemError( err.str());
}
......
......@@ -51,24 +51,24 @@ using namespace UniSetTypes;
} \
catch( IOController_i::NameNotFound &ex ) \
{ \
ulog.warn() << "(" << __STRING(fname) << "): " << ex.err << endl; \
uwarn << "(" << __STRING(fname) << "): " << ex.err << endl; \
} \
catch( IOController_i::IOBadParam &ex ) \
{ \
ulog.warn() << "(" << __STRING(fname) << "): " << ex.err << endl; \
uwarn << "(" << __STRING(fname) << "): " << ex.err << endl; \
} \
catch( Exception& ex ) \
{ \
ulog.warn() << "(" << __STRING(fname) << "): " << ex << endl; \
uwarn << "(" << __STRING(fname) << "): " << ex << endl; \
} \
catch(CORBA::SystemException& ex) \
{ \
ulog.warn() << "(" << __STRING(fname) << "): CORBA::SystemException: " \
uwarn << "(" << __STRING(fname) << "): CORBA::SystemException: " \
<< ex.NP_minorString() << endl; \
} \
catch(...) \
{ \
ulog.warn() << "(" << __STRING(fname) << "): catch ..." << endl; \
uwarn << "(" << __STRING(fname) << "): catch ..." << endl; \
} \
\
oref = CORBA::Object::_nil(); \
......@@ -77,7 +77,7 @@ using namespace UniSetTypes;
#define CHECK_IC_PTR(fname) \
if( !ic ) \
{ \
ulog.warn() << "(" << __STRING(fname) << "): function NOT DEFINED..." << endl; \
uwarn << "(" << __STRING(fname) << "): function NOT DEFINED..." << endl; \
throw UniSetTypes::TimeOut(); \
} \
......
......@@ -53,7 +53,7 @@ void TestProc::sysCommand( UniSetTypes::SystemMessage* sm )
void TestProc::sensorInfo( SensorMessage *sm )
{
/*
dlog.level2() << myname << "(sensorInfo): id=" << sm->id << " val=" << sm->value
mylog2 << myname << "(sensorInfo): id=" << sm->id << " val=" << sm->value
<< " " << timeToString(sm->sm_tv_sec,":")
<< "(" << setw(6) << sm->sm_tv_usec << "): "
<< endl;
......@@ -83,7 +83,7 @@ void TestProc::timerInfo( TimerMessage *tm )
{
state^=true;
out_lamp_c = ( state ? lmpBLINK : lmpOFF );
dlog.level2() << myname << ": state=" << state << " lmp=" << out_lamp_c << endl;
mylog2 << myname << ": state=" << state << " lmp=" << out_lamp_c << endl;
askTimer(tmCheckWorking,checkTime); // reset timer
}
else if( tm->id == tmCheckWorking )
......@@ -102,7 +102,7 @@ void TestProc::timerInfo( TimerMessage *tm )
cerr << "======= TEST LOG PRINT ======" << endl;
cerr << "LOGLEVEL: [" << (int)(*lit) << "] " << (*lit) << endl;
for( std::vector<Debug::type>::iterator it=loglevels.begin(); it!=loglevels.end(); ++it )
dlog[*it] << myname << ": test log print..." << endl;
mylog[*it] << myname << ": test log print..." << endl;
cerr << "======= END LOG PRINT ======" << endl;
}
......@@ -111,16 +111,16 @@ void TestProc::timerInfo( TimerMessage *tm )
void TestProc::test_depend()
{
cerr << myname << ": Check depend..." << endl;
long test_val = 100;
// set depend 0...
setValue(depend_c,0);
setValue(set_d1_check_s,test_val);
setValue(set_d2_check_s,test_val);
cerr << myname << ": check depend OFF: d1: " << ( getValue(d1_check_s) == 0 ? "OK" : "FAIL" ) << endl;
cerr << myname << ": check depend OFF: d2: " << ( getValue(d2_check_s) == -50 ? "OK" : "FAIL" ) << endl;
// set depend 1
setValue(depend_c,1);
cerr << myname << ": check depend ON: d1: " << ( getValue(d1_check_s) == test_val ? "OK" : "FAIL" ) << endl;
......@@ -132,10 +132,10 @@ void TestProc::test_undefined_state()
// ---------------- Проверка выставления неопределённого состояния ---------------------
cerr << myname << ": Check undef state..." << endl;
undef ^= true;
si.id = undef_c;
si.node = conf->getLocalNode();
cerr << myname << ": set undefined=" << undef << endl;
cerr << myname << ": set undefined=" << undef << endl;
ui.setUndefinedState( si, undef, getId() );
}
// -----------------------------------------------------------------------------
......@@ -149,7 +149,7 @@ void TestProc::test_thresholds()
setValue(t_set_c,378);
cerr << myname << ": check threshold ON value: " << ( getValue(t_check_s) == 1 ? "OK" : "FAIL" ) << endl;
cerr << myname << ": ask threshold and check.. " << endl;
try
......@@ -166,7 +166,7 @@ void TestProc::test_thresholds()
}
catch( Exception& ex )
{
dlog.level2() << myname << ": CHECK 'ask and get threshold' FAILED: " << ex << endl;
mylog2 << myname << ": CHECK 'ask and get threshold' FAILED: " << ex << endl;
}
}
// -----------------------------------------------------------------------------
......
......@@ -49,19 +49,19 @@ int main(int argc, const char **argv)
}
catch( SystemError& err )
{
ulog.crit() << "(smemory): " << err << endl;
ucrit << "(smemory): " << err << endl;
}
catch( Exception& ex )
{
ulog.crit() << "(smemory): " << ex << endl;
ucrit << "(smemory): " << ex << endl;
}
catch( std::exception& e )
{
ulog.crit() << "(smemory): " << e.what() << endl;
ucrit << "(smemory): " << e.what() << endl;
}
catch(...)
{
ulog.crit() << "(smemory): catch(...)" << endl;
ucrit << "(smemory): catch(...)" << endl;
}
return 1;
......
......@@ -73,7 +73,7 @@ namespace UniSetTypes
int getPIntField(const std::string& path, int def);
xmlNode* findNode(xmlNode* node, const std::string& searchnode, const std::string& name="" );
// Получить узел
xmlNode* getNode(const std::string& path);
// Получить указанное свойство пути
......@@ -92,7 +92,7 @@ namespace UniSetTypes
inline ObjectId getLocalNode() const { return localNode; } /*!< получение идентификатора локального узла */
inline std::string getLocalNodeName() const { return localNodeName; } /*!< получение название локального узла */
inline const std::string getNSName() const { return NSName; }
// repository
inline std::string getRootSection() const { return secRoot; }
inline std::string getSensorsSection() const { return secSensors; }
......@@ -108,7 +108,7 @@ namespace UniSetTypes
xmlNode* getXMLObjectNode( UniSetTypes::ObjectId );
UniversalIO::IOType getIOType( UniSetTypes::ObjectId );
UniversalIO::IOType getIOType( const std::string& name );
// net
inline unsigned int getCountOfNet() const { return countOfNet; }
inline unsigned int getRepeatTimeout() const { return repeatTimeout; }
......@@ -136,7 +136,7 @@ namespace UniSetTypes
inline bool isLocalIOR(){ return localIOR; }
inline bool isTransientIOR(){ return transientIOR; }
/*! получить значение указанного параметра, или значение по умолчанию */
std::string getArgParam(const std::string& name, const std::string& defval="");
/*! получить числовое значение параметра, если не число, то 0. Если параметра нет, используется значение defval */
......@@ -240,13 +240,28 @@ namespace UniSetTypes
/*! Глобальный объект для вывода логов */
extern DebugStream ulog;
// Инициализация UniSetTypes::conf.
// ( учитываются параметры командной строки --confile и --id-from-config )
void uniset_init( int argc, const char* const* argv, const std::string& xmlfile="configure.xml" );
} // end of UniSetTypes namespace
// --------------------------------------------------------------------------
// "синтаксический сахар"..для логов
#define uinfo if( UniSetTypes::ulog.debugging(Debug::INFO) ) UniSetTypes::ulog
#define uwarn if( UniSetTypes::ulog.debugging(Debug::WARN) ) UniSetTypes::ulog
#define ucrit if( UniSetTypes::ulog.debugging(Debug::CRIT) ) UniSetTypes::ulog
#define ulog1 if( UniSetTypes::ulog.debugging(Debug::LEVEL1) ) UniSetTypes::ulog
#define ulog2 if( UniSetTypes::ulog.debugging(Debug::LEVEL2) ) UniSetTypes::ulog
#define ulog3 if( UniSetTypes::ulog.debugging(Debug::LEVEL3) ) UniSetTypes::ulog
#define ulog4 if( UniSetTypes::ulog.debugging(Debug::LEVEL4) ) UniSetTypes::ulog
#define ulog5 if( UniSetTypes::ulog.debugging(Debug::LEVEL5) ) UniSetTypes::ulog
#define ulog6 if( UniSetTypes::ulog.debugging(Debug::LEVEL6) ) UniSetTypes::ulog
#define ulog7 if( UniSetTypes::ulog.debugging(Debug::LEVEL7) ) UniSetTypes::ulog
#define ulog8 if( UniSetTypes::ulog.debugging(Debug::LEVEL8) ) UniSetTypes::ulog
#define ulog9 if( UniSetTypes::ulog.debugging(Debug::LEVEL9) ) UniSetTypes::ulog
#define ulogsys if( UniSetTypes::ulog.debugging(Debug::SYSTEM) ) UniSetTypes::ulog
#define ulogrep if( UniSetTypes::ulog.debugging(Debug::REPOSITORY) ) UniSetTypes::ulog
// --------------------------------------------------------------------------
#endif // Configuration_H_
......@@ -54,7 +54,7 @@ void IORFile::setIOR( const ObjectId id, const ObjectId node, const string& sior
if( !ior_file )
{
ulog.crit() << "(IORFile): не смог открыть файл "+fname << endl;
ucrit << "(IORFile): не смог открыть файл "+fname << endl;
throw TimeOut("(IORFile): не смог создать ior-файл "+fname);
}
......
......@@ -35,18 +35,17 @@ using namespace std;
namespace ORepHelpers
{
// --------------------------------------------------------------------------
/*!
* \param cname - полное имя контекста ссылку на который, возвратит функция.
* \param argc, argv - параметры инициализации ORB
* \param cname - полное имя контекста ссылку на который, возвратит функция.
* \param argc, argv - параметры инициализации ORB
*/
CosNaming::NamingContext_ptr getContext(const string& cname, int argc, const char* const* argv, const string& nsName )throw(ORepFailed)
{
CORBA::ORB_var orb = CORBA::ORB_init( argc, (char**)argv );
if( ulog.is_repository() )
ulog.repository() << "OREPHELP: orb init ok"<< endl;
ulogrep << "OREPHELP: orb init ok"<< endl;
return getContext(orb, cname, nsName);
}
// --------------------------------------------------------------------------
......@@ -54,26 +53,22 @@ namespace ORepHelpers
{
CosNaming::NamingContext_var rootC;
if( ulog.is_repository() )
ulog.repository() << "OREPHELPER(getContext): get rootcontext...(servname = "<< servname << ")" <<endl;
ulogrep << "OREPHELPER(getContext): get rootcontext...(servname = "<< servname << ")" <<endl;
rootC = getRootNamingContext(orb, servname);
if( ulog.is_repository() )
ulog.repository() << "OREPHELPER(getContext): get rootContect ok " << endl;
ulogrep << "OREPHELPER(getContext): get rootContect ok " << endl;
if( CORBA::is_nil(rootC) )
{
if( ulog.is_warn() )
ulog.warn() << "OREPHELPER: не смог получить ссылку на NameServices"<< endl;
uwarn << "OREPHELPER: не смог получить ссылку на NameServices"<< endl;
throw ORepFailed("OREPHELPER(getContext): не смог получить ссылку на NameServices");
}
if ( cname.empty() )
return rootC._retn();
if( ulog.is_repository() )
ulog.repository() << "OREPHELPER(getContext): get ref context " << cname << endl;
ulogrep << "OREPHELPER(getContext): get ref context " << cname << endl;
CosNaming::Name_var ctxName = omniURI::stringToName(cname.c_str());
CosNaming::NamingContext_var ctx;
......@@ -91,16 +86,14 @@ namespace ORepHelpers
{
ostringstream err;
err << "OREPHELPER(getContext): не смог получить ссылку на контекст " << cname;
if( ulog.is_warn() )
ulog.warn() << err.str() << endl;
uwarn << err.str() << endl;
throw ORepFailed(err.str());
}
catch(const CosNaming::NamingContext::NotFound &nf)
{
ostringstream err;
err << "OREPHELPER(getContext): не найден контекст " << cname;
if( ulog.warn() )
ulog.warn() << err.str() << endl;
uwarn << err.str() << endl;
throw ORepFailed(err.str());
}
catch(const CosNaming::NamingContext::CannotProceed &np)
......@@ -108,40 +101,33 @@ namespace ORepHelpers
ostringstream err;
err << "OREPHELPER(getContext): catch CannotProced " << cname;
err << " bad part=" << omniURI::nameToString(np.rest_of_name);
if( ulog.is_warn() )
ulog.warn() << err.str() << endl;
uwarn << err.str() << endl;
throw ORepFailed(err.str());
}
catch(CORBA::SystemException& ex)
{
ostringstream err;
err << "OREPHELPER(getContext): поймали CORBA::SystemException: " << ex.NP_minorString();
if( ulog.is_warn() )
ulog.warn() << err.str() << endl;
uwarn << err.str() << endl;
throw ORepFailed(err.str());
}
catch(CORBA::Exception&)
{
if( ulog.is_warn() )
ulog.warn() << "OREPHELPER(getContext): поймали CORBA::Exception." << endl;
uwarn << "OREPHELPER(getContext): поймали CORBA::Exception." << endl;
throw ORepFailed();
}
catch(omniORB::fatalException& fe)
{
ostringstream err;
err << "OREPHELPER(getContext): поймали omniORB::fatalException:";
if( ulog.is_warn() )
{
ulog.warn() << err << endl;
ulog.warn() << " file: " << fe.file() << endl;
ulog.warn() << " line: " << fe.line() << endl;
ulog.warn() << " mesg: " << fe.errmsg() << endl;
}
uwarn << err << endl;
uwarn << " file: " << fe.file() << endl;
uwarn << " line: " << fe.line() << endl;
uwarn << " mesg: " << fe.errmsg() << endl;
throw ORepFailed(err.str());
}
if( ulog.is_repository() )
ulog.repository() << "getContext: получили "<< cname << endl;
ulogrep << "getContext: получили "<< cname << endl;
// Если _var
// return CosNaming::NamingContext::_duplicate(ctx);
......@@ -160,8 +146,7 @@ namespace ORepHelpers
{
// cout << "ORepHelpers(getRootNamingContext): nsName->" << nsName << endl;
CORBA::Object_var initServ = orb->resolve_initial_references(nsName.c_str());
if( ulog.is_repository() )
ulog.repository() << "OREPHELP: get rootcontext...(nsName = "<< nsName << ")" <<endl;
ulogrep << "OREPHELP: get rootcontext...(nsName = "<< nsName << ")" <<endl;
rootContext = CosNaming::NamingContext::_narrow(initServ);
if (CORBA::is_nil(rootContext))
......@@ -170,15 +155,13 @@ namespace ORepHelpers
throw ORepFailed(err.c_str());
}
if( ulog.is_repository() )
ulog.repository() << "OREPHELP: init NameService ok"<< endl;
ulogrep << "OREPHELP: init NameService ok"<< endl;
}
catch(CORBA::ORB::InvalidName& ex)
{
ostringstream err;
err << "ORepHelpers(getRootNamingContext): InvalidName=" << nsName;
if( ulog.is_warn() )
ulog.warn() << err.str() << endl;
uwarn << err.str() << endl;
throw ORepFailed(err.str());
}
catch (CORBA::COMM_FAILURE& ex)
......@@ -198,8 +181,7 @@ namespace ORepHelpers
throw ORepFailed(err);
}
if( ulog.is_repository() )
ulog.repository() << "OREPHELP: get root context ok"<< endl;
ulogrep << "OREPHELP: get root context ok"<< endl;
// // Если создан как _ptr
// return rootContext;
......@@ -210,7 +192,7 @@ namespace ORepHelpers
// ---------------------------------------------------------------------------------------------------------------
/*!
* \param fname - полное имя включающее в себя путь ("Root/Section1/name|Node:Alias")
* \param brk - используемый символ разделитель
* \param brk - используемый символ разделитель
*/
const string getShortName( const string& fname, const std::string& brk )
{
......@@ -226,10 +208,10 @@ namespace ORepHelpers
if( pos2 == string::npos && pos1 == string::npos )
return fname;
if( pos1 == string::npos )
return fname.substr( 0, pos2 );
if( pos2 == string::npos )
return fname.substr( pos1+1, fname.length() );
......@@ -239,7 +221,7 @@ namespace ORepHelpers
// ---------------------------------------------------------------------------------------------------------------
/*!
* \param fullName - полное имя включающее в себя путь
* \param brk - используемый символ разделитель
* \param brk - используемый символ разделитель
* \note Функция возвращает путь без последнего символа разделителя ("Root/Section1/name" -> "Root/Section1")
*/
const string getSectionName( const string& fullName, const std::string& brk )
......@@ -249,7 +231,7 @@ namespace ORepHelpers
return "";
return fullName.substr(0, pos);
}
}
// ---------------------------------------------------------------------------------------------------------------
/*
......@@ -259,7 +241,7 @@ namespace ORepHelpers
char checkBadSymbols(const string& str)
{
using namespace UniSetTypes;
for ( unsigned int i=0;i<str.length();i++)
{
for(unsigned int k=0; k<sizeof(BadSymbols); k++)
......@@ -269,7 +251,7 @@ namespace ORepHelpers
}
}
return 0;
}
}
// ---------------------------------------------------------------------------------------------------------------
string BadSymbolsToStr()
......
......@@ -55,7 +55,7 @@ ObjectId ObjectIndex_XML::getIdByName( const string& name )
MapObjectKey::iterator it = mok.find(name);
if( it != mok.end() )
return it->second;
return DefaultObjectId;
}
// -----------------------------------------------------------------------------------------
......@@ -66,7 +66,7 @@ string ObjectIndex_XML::getMapName( const ObjectId id )
return "";
}
// -----------------------------------------------------------------------------------------
// -----------------------------------------------------------------------------------------
string ObjectIndex_XML::getTextName( const ObjectId id )
{
if( (unsigned)id<omap.size() && (unsigned)id>=0 && (unsigned)id<omap.size() )
......@@ -88,9 +88,9 @@ std::ostream& ObjectIndex_XML::printMap( std::ostream& os )
if( it->repName == NULL )
continue;
os << setw(5) << it->id << " "
// << setw(45) << ORepHelpers::getShortName(it->repName,'/')
<< setw(45) << it->repName
os << setw(5) << it->id << " "
// << setw(45) << ORepHelpers::getShortName(it->repName,'/')
<< setw(45) << it->repName
<< " " << it->textName << endl;
}
......@@ -107,8 +107,8 @@ void ObjectIndex_XML::build(UniXML& xml)
ind = read_section(xml,"controllers",ind);
ind = read_section(xml,"services",ind);
ind = read_nodes(xml,"nodes",ind);
//
//
omap.resize(ind);
// omap[ind].repName=NULL;
// omap[ind].textName=NULL;
......@@ -119,13 +119,8 @@ unsigned int ObjectIndex_XML::read_section( UniXML& xml, const std::string& sec,
{
if( (unsigned)ind >= omap.size() )
{
if( ulog.is_info() )
{
ostringstream msg;
msg << "(ObjectIndex_XML::build): не хватило размера массива maxSize=" << omap.size();
// throw OutOfRange(msg.str());
ulog.warn() << msg.str() << "... Делаем resize + 100\n";
}
uwarn << "(ObjectIndex_XML::build): не хватило размера массива maxSize=" << omap.size()
<< "... Делаем resize + 100" << endl;
omap.resize(omap.size()+100);
}
......@@ -135,7 +130,7 @@ unsigned int ObjectIndex_XML::read_section( UniXML& xml, const std::string& sec,
{
ostringstream msg;
msg << "(ObjectIndex_XML::build):: не нашли параметр RootSection в конф. файле ";
ulog.crit() << msg.str() << endl;
ucrit << msg.str() << endl;
throw SystemError(msg.str());
}
......@@ -144,6 +139,7 @@ unsigned int ObjectIndex_XML::read_section( UniXML& xml, const std::string& sec,
{
ostringstream msg;
msg << "(ObjectIndex_XML::build): не нашли корневого раздела " << sec;
ucrit << msg.str() << endl;
throw NameNotFound(msg.str());
}
......@@ -153,6 +149,7 @@ unsigned int ObjectIndex_XML::read_section( UniXML& xml, const std::string& sec,
{
ostringstream msg;
msg << "(ObjectIndex_XML::build): не удалось перейти к списку элементов " << sec;
ucrit << msg.str() << endl;
throw NameNotFound(msg.str());
}
......@@ -164,6 +161,7 @@ unsigned int ObjectIndex_XML::read_section( UniXML& xml, const std::string& sec,
{
ostringstream msg;
msg << "(ObjectIndex_XML::build): у секции " << sec << " не указано свойство 'name' ";
ucrit << msg.str() << endl;
throw NameNotFound(msg.str());
}
......@@ -199,14 +197,9 @@ unsigned int ObjectIndex_XML::read_section( UniXML& xml, const std::string& sec,
if( (unsigned)ind >= omap.size() )
{
if( ulog.is_info() )
{
ostringstream msg;
msg << "(ObjectIndex_XML::build): не хватило размера массива maxSize=" << omap.size();
// throw OutOfRange(msg.str());
if( ulog.is_info() )
ulog.info() << msg.str() << "... Делаем resize + 100\n";
}
uinfo << "(ObjectIndex_XML::build): не хватило размера массива maxSize=" << omap.size()
<< "... Делаем resize + 100" << endl;
omap.resize(omap.size()+100);
}
}
......@@ -220,8 +213,7 @@ unsigned int ObjectIndex_XML::read_nodes( UniXML& xml, const std::string& sec, u
{
ostringstream msg;
msg << "(ObjectIndex_XML::build): не хватило размера массива maxSize=" << omap.size();
// throw OutOfRange(msg.str());
ulog.warn() << msg.str() << "... Делаем resize + 100\n";
uinfo << msg.str() << "... Делаем resize + 100\n";
omap.resize(omap.size()+100);
}
......@@ -251,7 +243,7 @@ unsigned int ObjectIndex_XML::read_nodes( UniXML& xml, const std::string& sec, u
string alias(xml.getProp(it,"alias"));
if( alias.empty() )
alias = name;
string nodename = mkFullNodeName(name,alias);
delete[] omap[ind].repName;
omap[ind].repName = new char[nodename.size()+1];
......@@ -267,7 +259,7 @@ unsigned int ObjectIndex_XML::read_nodes( UniXML& xml, const std::string& sec, u
strcpy( omap[ind].textName, textname.c_str() );
omap[ind].data = (void*)(xmlNode*)(it);
//
//
mok[omap[ind].repName] = ind;
// cout << "read: " << "(" << ind << ") " << omap[ind].repName << "\t" << omap[ind].textName << endl;
......@@ -276,8 +268,7 @@ unsigned int ObjectIndex_XML::read_nodes( UniXML& xml, const std::string& sec, u
{
ostringstream msg;
msg << "(ObjectIndex_XML::build): не хватило размера массива maxSize=" << omap.size();
// throw OutOfRange(msg.str());
ulog.warn() << msg.str() << "... Делаем resize + 100\n";
uwarn << msg.str() << "... Делаем resize + 100" << endl;
omap.resize(omap.size()+100);
}
}
......
......@@ -93,7 +93,7 @@ void ObjectIndex_idXML::read_section( UniXML& xml, const std::string& sec )
{
ostringstream msg;
msg << "(ObjectIndex_idXML::build):: не нашли параметр RootSection в конф. файле ";
ulog.crit() << msg.str() << endl;
ucrit << msg.str() << endl;
throw SystemError(msg.str());
}
......
......@@ -37,7 +37,7 @@ using namespace std;
// --------------------------------------------------------------------------
/*
ObjectRepository::ObjectRepository(int* argc, char* **argv, const char* NSName):
argc(*argc),
argc(*argc),
argv(*argv),
nsName(NSName)
{
......@@ -81,7 +81,7 @@ bool ObjectRepository::init()
localctx=0;
return false;
}
return true;
}
// --------------------------------------------------------------------------
......@@ -98,8 +98,7 @@ void ObjectRepository::registration(const string& name, const ObjectPtr oRef, co
{
ostringstream err;
if( ulog.is_info() )
ulog.info() << "ObjectRepository(registration): регистрируем " << name << endl;
uinfo << "ObjectRepository(registration): регистрируем " << name << endl;
// Проверка корректности имени
char bad = ORepHelpers::checkBadSymbols(name);
......@@ -110,7 +109,7 @@ void ObjectRepository::registration(const string& name, const ObjectPtr oRef, co
err << " содержит недопустимый символ " << bad;
throw ( InvalidObjectName(err.str().c_str()) );
}
CosNaming::Name_var oName = omniURI::stringToName(name.c_str());
CosNaming::NamingContext_var ctx;
for( int i=0; i<2; i++ )
......@@ -118,17 +117,15 @@ void ObjectRepository::registration(const string& name, const ObjectPtr oRef, co
try
{
// Добавляем в репозиторий новую ссылку (заменяя если есть старую)
CORBA::ORB_var orb = uconf->getORB();
ctx = ORepHelpers::getContext(orb, section, nsName);
ctx = ORepHelpers::getContext(orb, section, nsName);
ctx->bind(oName, oRef);
return;
}
catch(const CosNaming::NamingContext::AlreadyBound &nf)
{
if( ulog.is_warn() )
ulog.warn() << "(registration): "<< name <<" уже зарегестрирован в "<< section << "!!!" << endl;
uwarn << "(registration): "<< name <<" уже зарегестрирован в "<< section << "!!!" << endl;
if( !force )
throw ObjectNameAlready();
......@@ -139,7 +136,7 @@ void ObjectRepository::registration(const string& name, const ObjectPtr oRef, co
}
catch(ORepFailed)
{
string er("ObjectRepository(registrartion): (getContext) не смог зарегистрировать "+name);
string er("ObjectRepository(registrartion): (getContext) не смог зарегистрировать "+name);
throw ORepFailed(er.c_str());
}
catch(CosNaming::NamingContext::NotFound)
......@@ -157,16 +154,11 @@ void ObjectRepository::registration(const string& name, const ObjectPtr oRef, co
}
catch(CORBA::SystemException& ex)
{
if( ulog.is_warn() )
ulog.warn() << "ObjectRepository(registrartion): поймали CORBA::SystemException: "
uwarn << "ObjectRepository(registrartion): поймали CORBA::SystemException: "
<< ex.NP_minorString() << endl;
err << "ObjectRepository(registrartion): поймали CORBA::SystemException: " << ex.NP_minorString();
}
// catch(...)
// {
// ulog.warn() << "поймали что-то неизвестное..."<< endl;
// }
}
throw ORepFailed(err.str().c_str());
......@@ -178,7 +170,7 @@ void ObjectRepository::registration(const string& name, const ObjectPtr oRef, co
* \note При этом надо иметь ввиду, что задается полное имя объекта.
* Пример: registration("Root/SensorSection/sens1", oRef);
* \param fullName - полное имя регистрируемого объекта (т.е. включающее в себя имя секции)
* \param oRef - ссылка на объект
* \param oRef - ссылка на объект
* \exception ORepFailed - генерируется если произошла ошибка при регистрации
* \sa registration(const string name, const ObjectPtr oRef, const string section)
*/
......@@ -203,25 +195,18 @@ void ObjectRepository::registration( const std::string& fullName, const UniSetTy
void ObjectRepository::unregistration(const string& name, const string& section)
throw(ORepFailed, NameNotFound)
{
// ulog.info() << "OREP: unregistration "<< name << " из "<< section << endl;
ostringstream err;
CosNaming::Name_var oName = omniURI::stringToName(name.c_str());
// ulog.info() << "OREP: string to name ok"<< endl;
CosNaming::NamingContext_var ctx;
CORBA::ORB_var orb = uconf->getORB();
ctx = ORepHelpers::getContext(orb, section, nsName);
// ulog.info() << "OREP: get context " << section <<" ok"<< endl;
CORBA::ORB_var orb = uconf->getORB();
ctx = ORepHelpers::getContext(orb, section, nsName);
try
{
// Удаляем запись об объекте
ctx->unbind(oName);
// ulog.info() << "OREP: ok" << endl;
return;
}
}
catch(const CosNaming::NamingContext::NotFound &nf)
{
err << "ObjectRepository(unregistrartion): не найден объект ->" << name;
......@@ -269,7 +254,7 @@ ObjectPtr ObjectRepository::resolve( const string& name, const string& NSName )
CosNaming::Name_var nc = omniURI::stringToName(name.c_str());
oRef=localctx->resolve(nc);
if ( !CORBA::is_nil(oRef) )
return oRef._retn();
return oRef._retn();
err << "ObjectRepository(resolve): не смог получить ссылку на объект " << name.c_str();
}
......@@ -297,8 +282,8 @@ ObjectPtr ObjectRepository::resolve( const string& name, const string& NSName )
}
if(err.str().empty())
err << "ObjectRepository(resolve): ??? для " << name;
err << "ObjectRepository(resolve): ??? для " << name;
throw ORepFailed(err.str().c_str());
}
......@@ -344,23 +329,21 @@ bool ObjectRepository::listSections(const string& in_section, ListObjectName *ls
bool ObjectRepository::list(const string& section, ListObjectName *ls, unsigned int how_many, ObjectType type)
{
// Возвращает false если вынут не весь список...
// ulog.info() << "получаем список из "<< section << endl;
CosNaming::NamingContext_var ctx;
try
{
CORBA::ORB_var orb = uconf->getORB();
ctx = ORepHelpers::getContext(orb, section, nsName);
ctx = ORepHelpers::getContext(orb, section, nsName);
}
catch(ORepFailed)
{
ulog.warn() << "ORepository(list): не смог получить ссылку на "<< section << endl;
uwarn << "ORepository(list): не смог получить ссылку на "<< section << endl;
throw;
// return false;
}
if( CORBA::is_nil(ctx) )
{
ulog.warn() << "ORepository(list): не смог получить ссылку на "<< section << endl;
uwarn << "ORepository(list): не смог получить ссылку на "<< section << endl;
throw ORepFailed();
}
......@@ -383,7 +366,7 @@ bool ObjectRepository::list(const string& section, ListObjectName *ls, unsigned
for( unsigned int i=0; i<how_many;i++)
{
switch( type )
{
{
case ObjectRef:
{
if(bl[i].binding_type == CosNaming::nobject)
......@@ -413,7 +396,7 @@ bool ObjectRepository::isExist( const string& fullName )
{
try
{
CORBA::Object_var oRef = resolve(fullName, nsName);
CORBA::Object_var oRef = resolve(fullName, nsName);
return isExist(oRef);
}
catch(...){}
......@@ -435,10 +418,10 @@ bool ObjectRepository::isExist( ObjectPtr oref )
catch(CORBA::Exception&){}
catch(omniORB::fatalException& fe)
{
ulog.warn() << "ObjectRepository(isExist): "<< "поймали omniORB::fatalException:" << endl;
ulog.warn() << " file: " << fe.file() << endl;
ulog.warn() << " line: " << fe.line() << endl;
ulog.warn() << " mesg: " << fe.errmsg() << endl;
uwarn << "ObjectRepository(isExist): "<< "поймали omniORB::fatalException:" << endl;
uwarn << " file: " << fe.file() << endl;
uwarn << " line: " << fe.line() << endl;
uwarn << " mesg: " << fe.errmsg() << endl;
}
catch(...){}
......
......@@ -21,13 +21,13 @@
* \author Pavel Vainerman
*/
// --------------------------------------------------------------------------
#include <iomanip>
#include "ProxyManager.h"
#include "PassiveObject.h"
#include "ORepHelpers.h"
#include "Configuration.h"
// ------------------------------------------------------------------------------------------
using namespace std;
using namespace UniSetTypes;
// ------------------------------------------------------------------------------------------
PassiveObject::PassiveObject():
......@@ -117,14 +117,12 @@ void PassiveObject::processingMessage( UniSetTypes::VoidMessage* msg )
}
default:
//ulog.warn() << myname << ": неизвестное сообщение " << msg->type << endl;
break;
}
}
catch(Exception& ex)
catch( Exception& ex )
{
// ulog.warn()
// cerr << myname << "(processingMessage): " << ex << endl;
uwarn << myname << "(processingMessage): " << ex << endl;
}
}
// -------------------------------------------------------------------------
......
......@@ -48,7 +48,7 @@ void ProxyManager::attachObject( PassiveObject* po, UniSetTypes::ObjectId id )
{
if( id == DefaultObjectId )
{
ulog.warn() << myname << "(attachObject): попытка добавить объект с id="
uwarn << myname << "(attachObject): попытка добавить объект с id="
<< DefaultObjectId << " PassiveObject=" << po->getName() << endl;
return;
......@@ -78,39 +78,34 @@ bool ProxyManager::activateObject()
try
{
for( int i=0; i<2; i++ )
{
{
try
{
if( ulog.is_info() )
{
ulog.info() << myname << "(registered): попытка "
<< i+1 << " регистриую (id=" << it->first << ") "
<< " (pname=" << it->second->getName() << ") "
<< conf->oind->getNameById(it->first) << endl;
}
uinfo << myname << "(registered): попытка "
<< i+1 << " регистриую (id=" << it->first << ") "
<< " (pname=" << it->second->getName() << ") "
<< conf->oind->getNameById(it->first) << endl;
ui.registered(it->first, getRef(),true);
break;
}
catch( UniSetTypes::ObjectNameAlready& ex )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(registered): СПЕРВА РАЗРЕГИСТРИРУЮ (ObjectNameAlready)" << endl;
ucrit << myname << "(registered): СПЕРВА РАЗРЕГИСТРИРУЮ (ObjectNameAlready)" << endl;
try
{
ui.unregister(it->first);
}
catch(Exception & ex)
{
if( ulog.is_crit() )
ulog.crit() << myname << "(unregistered): " << ex << endl;
ucrit << myname << "(unregistered): " << ex << endl;
}
}
}
}
catch( Exception& ex )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(activate): " << ex << endl;
ucrit << myname << "(activate): " << ex << endl;
}
}
......@@ -127,8 +122,7 @@ bool ProxyManager::disactivateObject()
}
catch(Exception& ex )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(activate): " << ex << endl;
ucrit << myname << "(activate): " << ex << endl;
}
}
......@@ -150,19 +144,16 @@ void ProxyManager::processingMessage( UniSetTypes::VoidMessage *msg )
PObjectMap::iterator it = omap.find(msg->consumer);
if( it!=omap.end() )
it->second->processingMessage(msg);
else if( ulog.is_crit() )
{
ulog.crit() << myname << "(processingMessage): не найден объект "
else
ucrit << myname << "(processingMessage): не найден объект "
<< " consumer= " << msg->consumer << endl;
}
}
break;
}
}
catch( Exception& ex )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(processingMessage): " << ex << endl;
ucrit << myname << "(processingMessage): " << ex << endl;
}
}
// -------------------------------------------------------------------------
......@@ -176,8 +167,7 @@ void ProxyManager::allMessage( UniSetTypes::VoidMessage* msg )
}
catch( Exception& ex )
{
if( ulog.is_crit() )
ulog.crit() << myname << "(allMessage): " << ex << endl;
ucrit << myname << "(allMessage): " << ex << endl;
}
}
}
......
......@@ -59,9 +59,9 @@ void UniSetManager_LT::callback()
sleepTime=lt.checkTimers(this);
}
catch(Exception& ex)
catch( Exception& ex )
{
ulog.crit() << myname << "(callback): " << ex << endl;
ucrit << myname << "(callback): " << ex << endl;
}
}
// ------------------------------------------------------------------------------------------
......
......@@ -61,7 +61,7 @@ void UniSetObject_LT::callback()
}
catch(Exception& ex)
{
ulog.crit() << myname << "(callback): " << ex << endl;
ucrit << myname << "(callback): " << ex << endl;
}
}
// ------------------------------------------------------------------------------------------
......
......@@ -60,9 +60,9 @@ void IONotifyController_LT::callback()
sleepTime=lt.checkTimers(this);
}
catch(Exception& ex)
catch( Exception& ex )
{
ulog.crit() << myname << "(callback): " << ex << endl;
ucrit << myname << "(callback): " << ex << endl;
}
}
// ------------------------------------------------------------------------------------------
......
......@@ -20,7 +20,7 @@
/*! \file
* \author Pavel Vainerman
*/
// --------------------------------------------------------------------------
// --------------------------------------------------------------------------
#include "Debug.h"
#include "Configuration.h"
......@@ -44,7 +44,7 @@ void NCRestorer::addlist( IONotifyController* ic, SInfo& inf, IONotifyController
{
UniSetTypes::KeyType k( key(inf.si.id,inf.si.node) );
// Проверка зарегистрирован-ли данный датчик
// Проверка зарегистрирован-ли данный датчик
// если такого дискретного датчика нет, то здесь сработает исключение...
if( !force )
{
......@@ -63,18 +63,17 @@ void NCRestorer::addlist( IONotifyController* ic, SInfo& inf, IONotifyController
case UniversalIO::AO:
ic->ioRegistration(inf);
break;
default:
if( ulog.is_crit() )
ulog.crit() << ic->getName() << "(askDumper::addlist): НЕИЗВЕСТНЫЙ ТИП ДАТЧИКА! -> "
ucrit << ic->getName() << "(askDumper::addlist): НЕИЗВЕСТНЫЙ ТИП ДАТЧИКА! -> "
<< conf->oind->getNameById(inf.si.id,inf.si.node) << endl;
return;
break;
}
}
}
switch(inf.type)
{
case UniversalIO::DI:
......@@ -85,8 +84,7 @@ void NCRestorer::addlist( IONotifyController* ic, SInfo& inf, IONotifyController
break;
default:
if( ulog.is_crit() )
ulog.crit() << ic->getName() << "(NCRestorer::addlist): НЕИЗВЕСТНЫЙ ТИП ДАТЧИКА!-> "
ucrit << ic->getName() << "(NCRestorer::addlist): НЕИЗВЕСТНЫЙ ТИП ДАТЧИКА!-> "
<< conf->oind->getNameById(inf.si.id,inf.si.node) << endl;
break;
}
......@@ -94,7 +92,7 @@ void NCRestorer::addlist( IONotifyController* ic, SInfo& inf, IONotifyController
// ------------------------------------------------------------------------------------------
void NCRestorer::addthresholdlist( IONotifyController* ic, SInfo& inf, IONotifyController::ThresholdExtList& lst, bool force )
{
// Проверка зарегистрирован-ли данный датчик
// Проверка зарегистрирован-ли данный датчик
// если такого дискретного датчика нет сдесь сработает исключение...
if( !force )
{
......@@ -154,15 +152,13 @@ void NCRestorer::addthresholdlist( IONotifyController* ic, SInfo& inf, IONotifyC
}
catch( Exception& ex )
{
if( ulog.is_warn() )
ulog.warn() << ic->getName() << "(NCRestorer::addthresholdlist): " << ex
uwarn << ic->getName() << "(NCRestorer::addthresholdlist): " << ex
<< " для " << conf->oind->getNameById(inf.si.id, inf.si.node) << endl;
throw;
}
catch( CORBA::SystemException& ex )
{
if( ulog.is_warn() )
ulog.warn() << ic->getName() << "(NCRestorer::addthresholdlist): "
uwarn << ic->getName() << "(NCRestorer::addthresholdlist): "
<< conf->oind->getNameById(inf.si.id,inf.si.node) << " недоступен!!(CORBA::SystemException): "
<< ex.NP_minorString() << endl;
throw;
......@@ -198,14 +194,13 @@ void NCRestorer::init_depends_signals( IONotifyController* ic )
if( it->second.d_si.id == DefaultObjectId )
continue;
if( ulog.is_info() )
ulog.info() << ic->getName() << "(NCRestorer::init_depends_signals): "
uinfo << ic->getName() << "(NCRestorer::init_depends_signals): "
<< " init depend: '" << conf->oind->getMapName(it->second.si.id) << "'"
<< " dep_name=(" << it->second.d_si.id << ")'" << conf->oind->getMapName(it->second.d_si.id) << "'"
<< endl;
IOController::ChangeSignal s = ic->signal_change_value(it->second.d_si);
s.connect( sigc::mem_fun( &it->second, &IOController::USensorInfo::checkDepend) );
}
}
}
// -----------------------------------------------------------------------------
......@@ -50,7 +50,7 @@ timeout_t LT_Object::checkTimers( UniSetObject* obj )
{
{ // lock
uniset_rwmutex_rlock lock(lstMutex);
if( tlst.empty() )
{
sleepTime = UniSetTimer::WaitUpTime;
......@@ -69,18 +69,18 @@ timeout_t LT_Object::checkTimers( UniSetObject* obj )
return sleepTime;
}
}
{ // lock
uniset_rwmutex_wrlock lock(lstMutex);
sleepTime = UniSetTimer::WaitUpTime;
for( TimersList::iterator li=tlst.begin();li!=tlst.end();++li)
{
if( li->tmr.checkTime() )
{
{
// помещаем себе в очередь сообщение
TransportMessage tm = TimerMessage(li->id, li->priority, obj->getId()).transport_msg();
obj->push(tm);
// Проверка на количество заданных тактов
if( !li->curTick )
{
......@@ -102,19 +102,19 @@ timeout_t LT_Object::checkTimers( UniSetObject* obj )
// ищем минимальное оставшееся время
if( li->curTimeMS < sleepTime || sleepTime == UniSetTimer::WaitUpTime )
sleepTime = li->curTimeMS;
}
}
if( sleepTime < UniSetTimer::MinQuantityTime )
sleepTime=UniSetTimer::MinQuantityTime;
} // unlock
} // unlock
tmLast.reset();
}
catch(Exception& ex)
{
ulog.crit() << "(checkTimers): " << ex << endl;
ucrit << "(checkTimers): " << ex << endl;
}
return sleepTime;
}
// ------------------------------------------------------------------------------------------
......@@ -125,7 +125,7 @@ timeout_t LT_Object::askTimer( UniSetTypes::TimerId timerid, timeout_t timeMS, c
{
if( timeMS < UniSetTimer::MinQuantityTime )
{
ulog.crit() << "(LT_askTimer): [мс] попытка заказть таймер со временем срабатыания "
ucrit << "(LT_askTimer): [мс] попытка заказть таймер со временем срабатыания "
<< " меньше разрешённого " << UniSetTimer::MinQuantityTime << endl;
timeMS = UniSetTimer::MinQuantityTime;
}
......@@ -141,11 +141,8 @@ timeout_t LT_Object::askTimer( UniSetTypes::TimerId timerid, timeout_t timeMS, c
{
li->curTick = ticks;
li->tmr.setTiming(timeMS);
if( ulog.is_info() )
{
ulog.info() << "(LT_askTimer): заказ на таймер(id="
uinfo << "(LT_askTimer): заказ на таймер(id="
<< timerid << ") " << timeMS << " [мс] уже есть..." << endl;
}
return sleepTime;
}
}
......@@ -156,19 +153,17 @@ timeout_t LT_Object::askTimer( UniSetTypes::TimerId timerid, timeout_t timeMS, c
newti.reset();
} // unlock
if( ulog.is_info() )
ulog.info() << "(LT_askTimer): поступил заказ на таймер(id="<< timerid << ") " << timeMS << " [мс]\n";
uinfo << "(LT_askTimer): поступил заказ на таймер(id="<< timerid << ") " << timeMS << " [мс]\n";
}
else // отказ (при timeMS == 0)
{
if( ulog.is_info() )
ulog.info() << "(LT_askTimer): поступил отказ по таймеру id="<< timerid << endl;
uinfo << "(LT_askTimer): поступил отказ по таймеру id="<< timerid << endl;
{ // lock
uniset_rwmutex_wrlock lock(lstMutex);
tlst.remove_if(Timer_eq(timerid)); // STL - способ
} // unlock
}
{ // lock
uniset_rwmutex_rlock lock(lstMutex);
......
......@@ -42,7 +42,7 @@ uniset_mutex::uniset_mutex():
}
// -----------------------------------------------------------------------------
uniset_mutex::uniset_mutex( string name ):
cnd(0),
cnd(0),
nm(name),
locked(0)
{
......@@ -112,9 +112,9 @@ uniset_mutex_lock::uniset_mutex_lock( uniset_mutex& m, int timeMS ):
mutex->mtx.lock();
if( !mutex->cnd->timedwait(sec, msec) )
{
if( !mutex->name().empty() && ulog.is_level9() )
if( !mutex->name().empty() )
{
ulog.level9() << "(mutex_lock): вышло заданное время ожидания "
ulog9 << "(mutex_lock): вышло заданное время ожидания "
<< timeMS << " msec для " << mutex->name() << endl;
}
......@@ -134,7 +134,7 @@ bool uniset_mutex_lock::lock_ok()
}
uniset_mutex_lock::~uniset_mutex_lock()
{
{
if( mlock )
{
mlock = 0;
......@@ -181,7 +181,7 @@ const uniset_rwmutex &uniset_rwmutex::operator=( const uniset_rwmutex& r )
nm = s.str();
unlock();
}
return *this;
}
......@@ -209,7 +209,7 @@ void uniset_rwmutex::wrlock()
void uniset_rwmutex::rlock()
{
MUTEX_DEBUG(cerr << nm << " prepare RLocked.." << endl;)
while( wr_wait > 0 )
msleep(2);
......
......@@ -42,6 +42,7 @@ c_filterValue("")
// -----------------------------------------------------------------------------
Restorer_XML::~Restorer_XML()
{
}
// -----------------------------------------------------------------------------
void Restorer_XML::setItemFilter( const string& field, const string& val )
......@@ -65,8 +66,7 @@ bool Restorer_XML::getConsumerInfo( UniXML_iterator& it,
string cname( it.getProp("name"));
if( cname.empty() )
{
if( ulog.is_warn() )
ulog.warn() << "(Restorer_XML:getConsumerInfo): не указано имя заказчика..." << endl;
uwarn << "(Restorer_XML:getConsumerInfo): не указано имя заказчика..." << endl;
return false;
}
......@@ -79,19 +79,15 @@ bool Restorer_XML::getConsumerInfo( UniXML_iterator& it,
cname = conf->getServicesSection()+"/"+cname;
else
{
if( ulog.is_warn() )
{
ulog.warn() << "(Restorer_XML:getConsumerInfo): неизвестный тип объекта "
uwarn << "(Restorer_XML:getConsumerInfo): неизвестный тип объекта "
<< otype << endl;
}
return false;
}
cid = conf->oind->getIdByName(cname);
if( cid == UniSetTypes::DefaultObjectId )
{
if( ulog.is_crit() )
ulog.crit() << "(Restorer_XML:getConsumerInfo): НЕ НАЙДЕН ИДЕНТИФИКАТОР заказчика -->"
ucrit << "(Restorer_XML:getConsumerInfo): НЕ НАЙДЕН ИДЕНТИФИКАТОР заказчика -->"
<< cname << endl;
return false;
}
......@@ -110,17 +106,12 @@ bool Restorer_XML::getConsumerInfo( UniXML_iterator& it,
if( cnode == UniSetTypes::DefaultObjectId )
{
if( ulog.is_crit() )
ulog.crit() << "(Restorer_XML:getConsumerInfo): НЕ НАЙДЕН ИДЕНТИФИКАТОР узла -->"
ucrit << "(Restorer_XML:getConsumerInfo): НЕ НАЙДЕН ИДЕНТИФИКАТОР узла -->"
<< cnodename << endl;
return false;
}
if( ulog.is_info() )
{
ulog.info() << "(Restorer_XML:getConsumerInfo): "
<< cname << ":" << cnodename << endl;
}
uinfo << "(Restorer_XML:getConsumerInfo): " << cname << ":" << cnodename << endl;
return true;
}
// -----------------------------------------------------------------------------
......
......@@ -42,18 +42,18 @@ RunLock::~RunLock()
bool RunLock::isLocked(const string& name)
{
FILE *out = fopen( string(name + ".lock" ).c_str(), "r" );
if( out )
if( out )
{
char ptr[10];
fscanf( out, "%9s", ptr );
DIR *d = opendir( "/proc" );
dirent *dir;
while((dir = readdir(d)))
{
if( !strcmp( ptr, dir->d_name ) )
{
// по хорошему здесь надо бы проверять
// по хорошему здесь надо бы проверять
// статус на зомби
/*
string path(dir->d_name);
......@@ -70,20 +70,19 @@ bool RunLock::isLocked(const string& name)
break;
}
}
*/
if( ulog.is_info() )
ulog.info() << "(RunLock): programm " << name << " already run" << endl;
*/
uinfo << "(RunLock): programm " << name << " already run" << endl;
fclose(out);
closedir(d);
return true;
}
}
}
fclose(out);
closedir(d);
}
return false;
}
// --------------------------------------------------------------------------
......@@ -91,7 +90,7 @@ bool RunLock::lock( const string& name )
{
if( !isLocked(name) )
{
FILE *out = fopen( string(name + ".lock" ).c_str(), "w+" );
FILE *out = fopen( string(name + ".lock" ).c_str(), "w+" );
if(out)
{
fprintf( out, "%d\n", getpid() );
......@@ -99,14 +98,14 @@ bool RunLock::lock( const string& name )
return true;
}
}
return false;
}
// --------------------------------------------------------------------------
bool RunLock::unlock(const string& name)
{
string fname(name + ".lock");
FILE *out = fopen( fname.c_str(), "r" );
FILE *out = fopen( fname.c_str(), "r" );
if( out )
{
fclose(out);
......
......@@ -60,7 +60,6 @@ UniXML::UniXML():
UniXML::~UniXML()
{
//ulog.< "UniXML destr" << endl;
close();
}
......
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