간단한 구조가 마음에 들어 까먹기 전에 다시 작성해두기!
using System;
using System.IO;
using System.Runtime.CompilerServices;
using System.Windows.Forms;
namespace LogTest
{
public enum LogLevel
{
Debug, Info, Error
}
public static class Log
{
private static LogLevel logLevel;
private static string logPath;
public static void Init(LogLevel level) //최초 한번 실행해주기!
{
logLevel = level;
//폴더 등 설정
logPath = Path.Combine(Application.StartupPath, "test.log");
//기존 불필요한 로그 삭제하기.
}
public static void Write(string message, LogLevel level, [CallerMemberName] string callFunction = "")
{
if (logLevel <= level)
{
string type = level.ToString();
string logContent = string.Format("[{0}] {1} ({2}) : {3}{4}",
type, DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"), callFunction, message, Environment.NewLine);
File.AppendAllText(logPath, logContent);
}
}
}
}
'C# > Windows Form' 카테고리의 다른 글
[C# Windows Form] 둥근 버튼 만들기 (GraphicsPath) (0) | 2024.03.11 |
---|---|
[C# Windows Form] 디자인 문서개요 (요소 계층 구조 표현) (0) | 2024.03.11 |
[C# Windows Form] Close, Application.Exit, Environment.Exit 차이점 (0) | 2024.02.17 |
[C# Windows Form] 파일을 베이스64로 읽기 / 쓰기 (FileToBase64, Base64ToFile) (0) | 2024.02.12 |
[C# Windows Form] Form을 Alt+Tab 에 안보이도록 설정 (0) | 2024.02.11 |