/// <summary> /// ログ出力 /// </summary> /// <param name="iLogLevel">ログレベル</param> /// <param name="iLogKindName">ログ種別</param> /// <param name="iLogMessage">ログ内容</param> public void Output(LogLevelKind iLogLevel, string iLogKindName, string iLogMessage) { output(iLogLevel, iLogKindName, iLogMessage); }
/// <summary> /// ログ出力 /// </summary> /// <param name="iLogLevel">ログレベル</param> /// <param name="iLogKindName">ログ種別</param> /// <param name="iLogMessage">ログ内容</param> private void output(LogLevelKind iLogLevel, string iLogKindName, string iLogMessage) { if (!this.Enable) return; if (iLogMessage == string.Empty && iLogKindName == string.Empty) return; if (iLogLevel < this.OutputLogLevel) return; //一つ前のスタックを取得 StackFrame callerFrame = new StackFrame(2, true); MethodBase method = callerFrame.GetMethod(); string methodName = method.Name; string className = method.ReflectedType.FullName; int lineNo = callerFrame.GetFileLineNumber(); string outLogfileMsg = string.Empty; string outConsoleMsg = string.Empty; string strDateTime = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"); string strConsoleDateTime = DateTime.Now.ToString("HH:mm:ss"); string member = string.Format(FORMAT_MEMBER, className + "." + methodName, lineNo); if (iLogKindName == string.Empty) { outLogfileMsg = string.Format(FORMAT_LOG1, strDateTime, iLogLevel, iLogMessage, member); outConsoleMsg = string.Format(FORMAT_LOG1, strConsoleDateTime, iLogLevel, iLogMessage, member); } else { outLogfileMsg = string.Format(FORMAT_LOG2, strDateTime, iLogLevel, iLogKindName, iLogMessage, member); outConsoleMsg = string.Format(FORMAT_LOG1, strConsoleDateTime, iLogLevel, iLogMessage, member); } writeLog(getLogFilename(), outLogfileMsg); if (this.OutputConsole) { Console.WriteLine(outConsoleMsg); } }
/// <summary> /// ログ出力 /// </summary> /// <param name="iLogLevel">ログレベル</param> /// <param name="iLogMessage">ログ内容</param> public void Output(LogLevelKind iLogLevel, string iLogMessage) { output(iLogLevel, string.Empty, iLogMessage); }