隔一段时间输出日志

本文介绍两种监测机制:一是定期检查磁盘剩余空间,当空间低于阈值时,每隔五分钟发出警告;二是监测与冗余服务器的连接状态,若连接失败,将记录错误并重试。

方法一:

//判断磁盘剩余空间,若不够则抛弃当前数据,隔5分钟报一次错误
COleDateTime oleLast(m_stLastDiskNotEnouphPromptTime);
SYSTEMTIME stNow;
GetSystemTime(&stNow);
COleDateTime oleNow(stNow);
COleDateTimeSpan span = oleNow - oleLast;
double dSpan = span.GetTotalSeconds();
if (__int64(dSpan) > (5 * 60))
{
	DEBUG_TRACE_ERROR(WSTR("Disk space is less than min size. Alarm Record is missing! %s - %d"), __WFILENAME__, __LINE__);
	KXLOG_ERROR( WSTR( "Disk space is less than min size. Alarm data is missing! " ), KXSZ_LOG_CATEGORY_HISTORY );
	m_stLastDiskNotEnouphPromptTime = stNow;
}

方法二:

#define FAIL_OUT_INTERVAL			(300000)
static DWORD LastFailed		= 0;
DWORD		 CurrentTick	= GetTickCount();
bool		 FailOut		= ( CurrentTick < LastFailed ) || (  CurrentTick - LastFailed > FAIL_OUT_INTERVAL );

	
if( FailOut )
	{
		DEBUG_TRACE_ERROR( WSTR("Failed to connect to redundant server(%s:%s:%d)."),
							m_redundantHostAddr.c_str(),
							m_redundantHostPort.c_str() ,
							GetLastError());
		LastFailed = CurrentTick;
	}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值