/**************************************************************************** Main.h for csagentd ----------------------------------------- begin : 2015/04/13 copyright : (C) 2005 Solbox Inc. author : Dev Storage Team email : huibong@solbox.com version : 3.5 CopyRight(C) 2005 Solbox Inc. All Rights reserved. Redistribution and use in source and binary forms, with or with out modification, are not permitted in outside of Solbox Inc. *****************************************************************************/ #ifndef __CS_AGENTD_MAIN_H__ #define __CS_AGENTD_MAIN_H__ #include #include #include #ifdef __cplusplus extern "C" { #endif /// @brief 사용 방법을 화면에 표시하기 위한 함수. void PrintUsage( void ); /// @brief Version 정보를 화면에 표시하기 위한 함수 void PrintVersion( void ); /// @brief 현재 Process가 기동중인지 여부를 판단하기 위한 함수( 프로세스 중복 실행 체크) /// @return 이미 해당 프로세스가 기동 중인 경우 true 반환, 그렇지 않으면 false 반환. bool IsCurrentProcessRun( void ); /// @brief std 상에 trim 함수가 없어서 직접 구현 아니면 boost/algorithm/string.hpp 상의 boost::trim 함수 사용 /// @param str [in/out] Trim 할 문자열을 저장한 String 참조변수. /// @return void void Trim( std::string & str ); /// @brief 프로세스 종료에 따른 반복적인 종료 관련 작업을 수행하기 위한 함수. void ReadyToExit( void ); /// @brief Main 프로세스 signal 처리 설정을 위한 함수 /// @return void void SetSignalMain( void ); /// @brief System 정보 Collect 처리를 담당할 SystemCollect Worker 프로세스 생성 /// @return 생성 성공시 true, 실패시 false bool MakeWorkerSystemCollect(); /// @brief Service 상태 Check 를 담당할 ServiceCheck Worker 프로세스 생성 /// @return 생성 성공시 true, 실패시 false bool MakeWorkerServiceCheck(); /// @brief RCTS 로 System, Service 상태 정보를 전송할 Send Worker 프로세스 생성 /// @return 생성 성공시 true, 실패시 false bool MakeWorkerSend(); /// @brief Storage 상태 Check 를 담당할 StorageCheck Worker 프로세스 생성 /// @return 생성 성공시 true, 실패시 false bool MakeWorkerStorageCheck(); /// @brief TCP Port 를 Listen 상태로 Open 후 서비스 상태에 따른 Port 상태 제어를 담당할 Worker 프로세스 생성 /// @return 생성 성공시 true, 실패시 false bool MakeWorkerMonitoringPortControl(); // Telegarf control 을 담당할 worker 프로세스 생성 bool MakeWorkerTelegrafControl(); #ifdef __cplusplus } #endif #endif /* __CS_AGENTD_MAIN_H__ */