@echo off
SETLOCAL enabledelayedexpansion
REM ### Winodws7,Windows10共用
REM ###
REM ### Log_Collection_Operator.bat.txt
REM ###
REM ### 保守員がWindowsのイベントログ（Application、Setup、System）を
REM ### 収集するBatchを起動するために使用するBatchファイルである。
REM ###

REM ###
REM ### メッセージ一覧
REM ###
set MSG-INI-029-E="MSG-INI-029-E-[Error] Failed to create required folder."
set MSG-COM-002-I="MSG-COM-002-I-This window is closed by pushing down an Enter key."
set MSG-COM-009-E="MSG-COM-009-E-[Error] A required file can not be found."
set MSG-COM-010-I="MSG-COM-010-I-[Start] Start Windows event log collection."
set MSG-COM-011-I="MSG-COM-011-I-[Collection SUCCESS] Windows event log collection succeeded."
set MSG-COM-012-E="MSG-COM-012-E-[Collection FAILED] Windows event log collection failed."
set MSG-COM-013-I="MSG-COM-013-I-Delete Windows event log."
set MSG-COM-014-I="MSG-COM-014-I-Collect Windows Application event log files."
set MSG-COM-015-I="MSG-COM-015-I-Collect Windows Setup event log file."
set MSG-COM-016-I="MSG-COM-016-I-Collect Windows System event log file."
set MSG-COM-017-E="MSG-COM-017-E-Failed to collect Windows event log file."
set MSG-COM-018-E="MSG-COM-018-E-Failed to start Log_Collection.bat."
set MSG-COM-019-E="MSG-COM-019-E-An error occurred in Log_Collection.bat."
set MSG-COM-020-I="MSG-COM-020-I-##### Start Log_Collection_Operator.bat #####"
set MSG-COM-021-I="MSG-COM-021-I-##### Start Log_Collection.bat #####"

REM ###
REM ### ファイルを格納するフォルダ
REM ###
set DIR_LOG=C:\DKC200\others\mssp\log\

REM ###
REM ### コンソール出力制御フラグ
REM ###
set CONSOLE_OFF=0
set CONSOLE_ON=1

REM ###
REM ### ログフォルダ作成
REM ###
if not exist %DIR_LOG% (
	mkdir %DIR_LOG% 2>nul
	if %errorlevel% neq 0 (
		echo %MSG-INI-029-E%
		echo %MSG-COM-002-I%
		pause > nul 2>&1
		exit
	)
)

REM ###
REM ### Log_Collection_Operator.bat起動開始
REM ###
call :LOG_OUT %MSG-COM-020-I% %CONSOLE_OFF%
echo %~dp0 >> %DIR_LOG%AutoInstall_log.txt

REM ###
REM ### ログ収集Batch実行
REM ###
call :LOG_COLLECTION

REM ###
REM ### 終了
REM ###
call :LOG_OUT %MSG-COM-002-I% %CONSOLE_ON%
pause > nul 2>&1

exit


REM ###############################################
REM ###
REM ### 	Windows イベントログ収集
REM ###
REM ###############################################
:LOG_COLLECTION

REM ### Windows イベントログ収集
REM ### 存在チェック
REM ### Windowsイベントログ収集開始
call :LOG_OUT %MSG-COM-021-I% %CONSOLE_OFF%
call :LOG_OUT %MSG-COM-010-I% %CONSOLE_ON%

set BATCH_LOG_COLLECTION=%~dp0Batch_File\Log_Collection.bat
if exist %BATCH_LOG_COLLECTION% (
	call %BATCH_LOG_COLLECTION% 2>nul
	set BAT_ERROR=!errorlevel!
	if !BAT_ERROR! == 0 (
		call :LOG_OUT %MSG-COM-011-I% %CONSOLE_ON%
 	) else if !BAT_ERROR! == 1 (
		call :LOG_OUT %MSG-COM-018-E% %CONSOLE_OFF%
		call :LOG_OUT %MSG-COM-012-E% %CONSOLE_ON%
 	) else (
		call :LOG_OUT %MSG-COM-019-E% %CONSOLE_OFF%
		call :LOG_OUT %MSG-COM-012-E% %CONSOLE_ON%
	)
) else (
	call :LOG_OUT %MSG-COM-009-E% %CONSOLE_ON%
	echo %BATCH_LOG_COLLECTION% >> %DIR_LOG%AutoInstall_log.txt
)

exit /b 0


REM ###############################################
REM ###
REM ### メッセージ出力
REM ###
REM ### 引数
REM ### %1:メッセージ
REM ### %2:コンソール出力スイッチ（CONSOLE_OFF:0 CONSOLE_ON:1）
REM ###
REM ###############################################
:LOG_OUT

REM ### コンソールにメッセージ出力チェック
if %CONSOLE_ON%==%2 (
	REM ### コンソール出力
	set MSGMK1=%1
	set MSGMK2=!MSGMK1:~15!
	set MSGMK3=!MSGMK2:~0,-1!
	echo !MSGMK3!
)

REM ### ログファイル出力
echo [%date%-%time%] %~1 >> %DIR_LOG%AutoInstall_log.txt

exit /b 0
ENDLOCAL enabledelayedexpansion
