기본 콘텐츠로 건너뛰기

라벨이 log4net인 게시물 표시

[윈도우즈 서비스] log4net - #3

이제 윈도우즈 서비스에서 프로세스를 이용하여 작업을 수행 할 수 있습니다. 이전 글에서도 이야기 한 것처럼 로그를 남기는 것은 중요한 부분입니다. log4net - Adding appenders programmatically log4net을 이용한 logging Dynamic log fileNames with log4net 로그를 남겨야만 프로그램이 오작동 했을 때 원인을 유추해 볼 수 있습니다. 그래서 윈도우즈 서비스와 프로세스 둘 다 로그를 남기기로 하고 설정을 했습니다. Cofiguration 예제 <?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections> <log4net> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="${programdata}\FinalService\Process\Log\"/> <appendtofile value="true"/> <datepattern value="yyyy-MM-dd'.log'"/> <staticlogfilename value="false"/> ...

log4net을 이용한 logging

프로그램 작성하다 보면 log를 남기는 경우가 많은데, 회사 프로그램을 보다 보면 의식의 흐름대로 손이 가는대로 Stream을 열어 텍스트 파일로 저장하는 경우가 대부분이었습니다. 텍스트 파일로 log를 남기는 것도 좋습니다. 하지만 log4net을 사용하면 코딩을 적게 하면서 우아하게 log를 남길수 있습니다. /// 로그를 파일에 남긴다. 단 파일 크기가 일정 사이즈를 넘으면 새로운 파일이 생긴다 public static void WriteLog(string sMessage) { try { string sLogFile = Path.Combine(AppDataFolder, "ClearSP3DLicense.log"); string sLogDirPath = Path.GetDirectoryName(sLogFile); string sLogShortFileName = Path.GetFileNameWithoutExtension(sLogFile); StreamWriter sw = new StreamWriter(sLogFile, true); if (sw.BaseStream.Length > 10000000) { sw.Close(); sw.Dispose(); System.IO.File.Copy(sLogFile, sLogDirPath + sLogShortFileName + "_" + System.DateTime.Now.ToString("yyyy-MM-dd-HH-MM") + ".log"); System.IO.File.Delete(sLogFile); sw = new System.IO.StreamWriter(sLogFile, true); } ...

log4net - Adding appenders programmatically

log4net에서 사용자 정의 appender를 추가하는 방법을 알아보도록 하겠습니다. 1. 먼저 xml을 아래와 같이 작성합니다. 1 2 3 4 5 6 7 8 9 10 11 12 < ?xml   version = "1.0"   encoding = "utf-8"   ? > < log4net >      < appender   name = "HtmlAppender"   type = "log4net.Appender.FileAppender" >          < file   type = "log4net.Util.PatternString"   value = "%property{LogName}"   / >              < appendToFile   value = "true"   / >              < datePattern   value = "-yyyy-MM-dd"   / >              < rollingStyle   value = "Date"   / >              < layout   type = "_7D_EPF.SimpleHtmlColoredLayout , _7D...

Dynamic log fileNames with log4net

log4net을 사용할려고 하다보니 log 파일의 경로가 xml 파일에 입력이 되어 있어서 동적으로 파일의 경로를 설정해 줄수 없는 문제가 발생했습니다. 인터넷으로 검색하다 아래  문서를 발견했습니다. url : http://geekswithblogs.net/rgupta/archive/2009/03/03/dynamic-log-filenames-with-log4net.aspx