Пример #1
0
//-------------------------------------------------------------------------------------
void Logger::updateLogWatcherSetting(Network::Channel* pChannel, KBEngine::MemoryStream& s)
{
	LogWatcher* pLogwatcher = &logWatchers_[pChannel->addr()];
	if(!pLogwatcher->updateSetting(&s))
	{
		ERROR_MSG(fmt::format("Logger::updateLogWatcherSetting: addr={} is failed!\n",
			pChannel->addr().c_str()));

		logWatchers_.erase(pChannel->addr());
	}

	s.done();
}
Пример #2
0
//-------------------------------------------------------------------------------------
void Messagelog::registerLogWatcher(Mercury::Channel* pChannel, KBEngine::MemoryStream& s)
{
	LogWatcher* pLogwatcher = &logWatchers_[pChannel->addr()];
	if(!pLogwatcher->loadFromStream(&s))
	{
		ERROR_MSG(boost::format("Messagelog::registerLogWatcher: addr=%1% is failed!\n") %
			pChannel->addr().c_str());

		logWatchers_.erase(pChannel->addr());
		return;
	}

	pLogwatcher->addr(pChannel->addr());

	INFO_MSG(boost::format("Messagelog::registerLogWatcher: addr=%1% is successfully!\n") %
		pChannel->addr().c_str());
}
Пример #3
0
//-------------------------------------------------------------------------------------
void Logger::sendInitLogs(LogWatcher& logWatcher)
{
	std::deque<LOG_ITEM*>::iterator iter = buffered_logs_.begin();
	for(; iter != buffered_logs_.end(); ++iter)
	{
		logWatcher.onMessage((*iter));
	}
}
Пример #4
0
//-------------------------------------------------------------------------------------
void Logger::registerLogWatcher(Network::Channel* pChannel, KBEngine::MemoryStream& s)
{
	LogWatcher* pLogwatcher = &logWatchers_[pChannel->addr()];
	if(!pLogwatcher->createFromStream(&s))
	{
		ERROR_MSG(fmt::format("Logger::registerLogWatcher: addr={} is failed!\n",
			pChannel->addr().c_str()));

		logWatchers_.erase(pChannel->addr());
		s.done();
		return;
	}

	pLogwatcher->addr(pChannel->addr());

	INFO_MSG(fmt::format("Logger::registerLogWatcher: addr={0} is successfully!\n",
		pChannel->addr().c_str()));

	bool first;
	s >> first;

	if(first)
		sendInitLogs(*pLogwatcher);
}