Microsoft MVP성태의 닷넷 이야기
.NET Framework: 835. .NET Core/C# - 리눅스 syslog에 로그 남기는 방법 [링크 복사], [링크+제목 복사],
조회: 16936
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

.NET Core/C# - 리눅스 syslog에 로그 남기는 방법

지난 글에서 syslog 관련 사용법을 간단하게 살펴봤는데요.

Linux에서 윈도우의 OutputDebugString 대신 사용할 수 있는 syslog
; https://www.sysnet.pe.kr/2/0/11899

.NET Core의 경우 일단 BCL 수준에서 syslog에 로그를 남기는 방법은 없는 것 같습니다. 물론, PInvoke를 이용해 libc.so의 함수를 다음과 같이 간단하게 만들어 사용하면 됩니다.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Threading.Tasks;

public class LinuxExtension
{
    [DllImport("libc", CharSet = CharSet.Ansi, ExactSpelling = true, CallingConvention = CallingConvention.Cdecl)]
    protected static extern void syslog(int priority, string fmt, byte[] msg);

    public enum SyslogPriority
    {
        LOG_EMERG = 0,
        LOG_ALERT = 1,
        LOG_CRIT = 2,
        LOG_ERR = 3,
        LOG_WARNING = 4,
        LOG_NOTICE = 5,
        LOG_INFO = 6,
        LOG_DEBUG = 7,
    }

    public static void WriteSyslog(SyslogPriority priority, string text)
    {
        if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux) == true)
        {
            syslog((int)priority, text, null);
        }
    }
}




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 5/22/2019]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... [181]  182  183  184  185  186  187  188  189  190  191  192  193  194  195  ...
NoWriterDateCnt.TitleFile(s)
457정성태2/8/200726209.NET Framework: 80. LINQ 관련 용어 정리 및 리소스 소개 [2]
456정성태2/6/200724453Windows: 22. 가상화에 대해서.
455정성태2/4/200719319오류 유형: 25. 원격 데스크톱 환경에서의 Virtual Server 관리 환경 제어
454정성태2/4/200716827오류 유형: 24. VPC에서의 Vista 네트워킹 문제
509손대성6/24/200718921    답변글 오류 유형: 24.1. [답변]: 오류 유형 : 23. VPC 에서의 Vista 네트워킹 문제
453정성태2/4/200725010개발 환경 구성: 21. 서버 측 SoapExtension을 클라이언트에 알리고 싶다
452정성태1/31/200724750VC++: 31. 비스타에서 VS.NET 2005로 COM 프로젝트 빌드시 오류 [2]
451정성태1/31/200723880Windows: 21. Preview Handler 소개
450정성태1/30/200732162VS.NET IDE: 43. .NET에서의 필수 무결성 제어 조절하는 방법 - Manifest 파일 이용파일 다운로드2
449정성태2/4/200728952Windows: 20. UAC 이모저모 [2]
448정성태1/28/200724657Windows: 19. 3가지 유형의 가젯 프로그램
447정성태1/27/200721789Windows: 18. 비스타 도구 - 사양 정보 및 도구(Performance Information and Tools)
446정성태1/27/200730781VC++: 30. 필수 무결성 제어를 조절하는 방법(2) - 직접 코딩파일 다운로드1
445정성태2/8/200729339VC++: 29. 필수 무결성 제어를 조절하는 방법(1) - Manifest 파일 이용파일 다운로드2
444정성태1/27/200722804VC++: 28. 비스타 응용 프로그램 개발을 위한 VS.NET 2005 환경 설정
443정성태1/26/200721229VC++: 27. COM 개체로 인해 IE 7 비스타 버전이 종료될 때 오류 화면이 뜬다면?파일 다운로드1
442정성태1/24/200724251.NET Framework: 79. 새로운 암호화 클래스 (ECDsaCng, ECDiffieHellmanCng) 소개 [1]
441정성태1/23/200728968Windows: 17. 보안 데스크톱에서 활성화되지 않은 UAC 창이 안전할까?
440정성태1/24/200723059.NET Framework: 78. C# 3.0 - Anonymous types [1]
439정성태1/25/200724056.NET Framework: 77. C# 3.0 - Lambda 표현식 [1]
438정성태1/24/200723548.NET Framework: 76. C# 3.0 - 확장 함수
437정성태1/23/200731022Windows: 16. 개발자를 위한 UAC 환경 설정 [3]
436정성태1/17/200720191VS.NET IDE: 42. Orcas 2007년 1월 CTP 버전 설치 [5]
435정성태1/14/200719853기타: 17. 베타 제품과 최종 제품은 다르다 [2]
434정성태2/4/200723425Windows: 15. MIC 환경 구성 - Windows XP와 유사한 보안 설정 [4]
433정성태1/12/200732963Windows: 14. 보호 모드와 필수 무결성 제어(MIC: Mandatory Integrity Control) [3]파일 다운로드1
... [181]  182  183  184  185  186  187  188  189  190  191  192  193  194  195  ...