Clone
ixen <ixen@copyhandler.com>
committed
on 17 Oct 16
Added lots of logging to filesystem handling functions (CH-206)
ParallelizeReaderWriter + 4 more
src/ch/ch.cpp (+4 -1)
299 299         chcore::TConfig& rCfg = GetConfig();
300 300         rCfg.ConnectToNotifier(ConfigPropertyChangedCallback, nullptr);
301 301
302 302         // read the configuration
303 303         try
304 304         {
305 305                 rCfg.Read(strCfgPath);
306 306         }
307 307         catch(...)
308 308         {
309 309         }
310 310
311 311         // ================================= Logging ========================================
312 312         InitLoggers();
313 313
314 314         // logger config
315 315         m_spAppLoggerConfig->SetLogLevel(L"default", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_APP>(rCfg));
316 316         m_spEngineLoggerConfig->SetLogLevel(L"default", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_ENGINEDEFAULT>(rCfg));
317 317         m_spEngineLoggerConfig->SetLogLevel(L"Filesystem", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_FILESYSTEM>(rCfg));
318 318         m_spEngineLoggerConfig->SetLogLevel(L"Filesystem-File", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_FILESYSTEM>(rCfg));
  319         m_spEngineLoggerConfig->SetLogLevel(L"DataBuffer", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_FILESYSTEM>(rCfg));
319 320         m_spEngineLoggerConfig->SetLogLevel(L"Task", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_TASK>(rCfg));
320 321         m_spEngineLoggerConfig->SetLogLevel(L"ST-FastMove", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_SUBTASK_FASTMOVE>(rCfg));
321 322         m_spEngineLoggerConfig->SetLogLevel(L"ST-CopyMove", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_SUBTASK_COPYMOVE>(rCfg));
322 323         m_spEngineLoggerConfig->SetLogLevel(L"ST-Delete", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_SUBTASK_DELETE>(rCfg));
323 324         m_spEngineLoggerConfig->SetLogLevel(L"ST-ScanDirs", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_SUBTASK_SCANDIR>(rCfg));
324 325
325 326         // initialize the global log file if it is requested by configuration file
326 327         CString strLogPath = strPath + _T("\\ch.log");
327 328
328 329         m_spLog = logger::MakeLogger(logger::TAsyncMultiLogger::GetInstance()->CreateLoggerData(strLogPath, m_spAppLoggerConfig), L"App");
329 330
330 331         LOG_INFO(m_spLog) << _T("============================ Initializing Copy Handler ============================");
331 332         LOG_INFO(m_spLog) << _T("");
332 333
333 334         // ================================= COM ========================================
334 335         LOG_INFO(m_spLog) << _T("Initializing COM");
335 336
336 337         HRESULT hResult = CoInitializeEx(nullptr, COINIT_MULTITHREADED);
337 338         if(FAILED(hResult))
338 339         {
 
673 674         // is this language
674 675         if(setPropNames.HasValue(PropData<PP_PLANGUAGE>::GetPropertyName()))
675 676         {
676 677                 // update language in resource manager
677 678                 CString strPath;
678 679                 GetPropValue<PP_PLANGUAGE>(GetConfig(), strPath);
679 680                 GetResManager().SetLanguage(m_pathProcessor.ExpandPath(strPath));
680 681         }
681 682
682 683         if(setPropNames.HasValue(PropData<PP_LOGMAXSIZE>::GetPropertyName()))
683 684                 logger::TAsyncMultiLogger::GetInstance()->SetMaxLogSize(GetPropValue<PP_LOGMAXSIZE>(GetConfig()));
684 685         if(setPropNames.HasValue(PropData<PP_LOGROTATECOUNT>::GetPropertyName()))
685 686                 logger::TAsyncMultiLogger::GetInstance()->SetMaxRotatedCount(GetPropValue<PP_LOGROTATECOUNT>(GetConfig()));
686 687
687 688         if(setPropNames.HasValue(PropData<PP_LOGLEVEL_APP>::GetPropertyName()))
688 689                 m_spLog->GetLogFileData()->GetMultiLoggerConfig()->SetLogLevel(L"default", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_APP>(rCfg));
689 690
690 691         if(setPropNames.HasValue(PropData<PP_LOGLEVEL_ENGINEDEFAULT>::GetPropertyName()))
691 692                 m_spEngineLoggerConfig->SetLogLevel(L"default", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_ENGINEDEFAULT>(rCfg));
692 693         if(setPropNames.HasValue(PropData<PP_LOGLEVEL_FILESYSTEM>::GetPropertyName()))
  694         {
693 695                 m_spEngineLoggerConfig->SetLogLevel(L"Filesystem", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_FILESYSTEM>(rCfg));
694           if(setPropNames.HasValue(PropData<PP_LOGLEVEL_FILESYSTEM>::GetPropertyName()))
695 696                 m_spEngineLoggerConfig->SetLogLevel(L"Filesystem-File", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_FILESYSTEM>(rCfg));
  697                 m_spEngineLoggerConfig->SetLogLevel(L"DataBuffer", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_FILESYSTEM>(rCfg));
  698         }
696 699         if(setPropNames.HasValue(PropData<PP_LOGLEVEL_TASK>::GetPropertyName()))
697 700                 m_spEngineLoggerConfig->SetLogLevel(L"Task", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_TASK>(rCfg));
698 701         if(setPropNames.HasValue(PropData<PP_LOGLEVEL_SUBTASK_FASTMOVE>::GetPropertyName()))
699 702                 m_spEngineLoggerConfig->SetLogLevel(L"ST-FastMove", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_SUBTASK_FASTMOVE>(rCfg));
700 703         if(setPropNames.HasValue(PropData<PP_LOGLEVEL_SUBTASK_COPYMOVE>::GetPropertyName()))
701 704                 m_spEngineLoggerConfig->SetLogLevel(L"ST-CopyMove", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_SUBTASK_COPYMOVE>(rCfg));
702 705         if(setPropNames.HasValue(PropData<PP_LOGLEVEL_SUBTASK_DELETE>::GetPropertyName()))
703 706                 m_spEngineLoggerConfig->SetLogLevel(L"ST-Delete", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_SUBTASK_DELETE>(rCfg));
704 707         if(setPropNames.HasValue(PropData<PP_LOGLEVEL_SUBTASK_SCANDIR>::GetPropertyName()))
705 708                 m_spEngineLoggerConfig->SetLogLevel(L"ST-ScanDirs", (logger::ESeverityLevel)GetPropValue<PP_LOGLEVEL_SUBTASK_SCANDIR>(rCfg));
706 709 }
707 710
708 711 void CCopyHandlerApp::OnResManNotify(UINT uiType)
709 712 {
710 713         if (uiType == RMNT_LANGCHANGE)
711 714         {
712 715                 // language has been changed - close the current help file
713 716                 if (UpdateHelpPaths())
714 717                         HtmlHelp(0, HH_CLOSE_ALL);
715 718         }