Log4j输出日志到syslog

2024-01-04 16:38
文章标签 输出 日志 log4j syslog

本文主要是介绍Log4j输出日志到syslog,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

[color=red]blog迁移至[/color]:[url=http://www.micmiu.com]http://www.micmiu.com[/url]

[size=large]本文详细讲述三种方式配置Log4j输出日志到syslog[/size]
Log4j基本配置介绍详见blog:[url=http://sjsky.iteye.com/blog/856206]http://sjsky.iteye.com/blog/856206[/url]

[color=blue][size=large]syslog三种实现方式的比较[/size][/color]
[list]
[*]Log4j自带的SyslogAppender,[color=red]只能配置主机地址不能自定义端口[/color]
[*]第三方syslog4j,[color=red]可以配置协议、主机地址和端口,但是一种协议只能配置一个appender实例[/color]
[*]自己实现的SyslogSunjAppender,[color=red]可以同时配置主机地址和端口[/color]
[/list]
[size=large][color=blue][一]Log4j自带的SyslogAppender[/color][/size]
只能配置接受syslog日志的主机地址,端口不可配置,使用默认的:514

log4j.rootLogger=INFO,syslog
log4j.appender.syslog=org.apache.log4j.net.SyslogAppender
log4j.appender.syslog.SyslogHost=192.168.8.145
log4j.appender.syslog.Facility=LOCAL1
log4j.appender.syslog.header=true
log4j.appender.syslog.Threshold=INFO
log4j.appender.syslog.layout=org.apache.log4j.PatternLayout
log4j.appender.syslog.layout.ConversionPattern=%5p | %c{1}-%M [%d{yyyy-MM-dd HH:mm:ss}] - %m%n

[size=large][color=blue][二]第三方syslog4j[/color][/size]
[list]
[*]官网介绍:[url=http://www.syslog4j.org/]http://www.syslog4j.org/[/url]
[*]提供jar包下载:[url=http://dl.iteye.com/topics/download/1eac73f5-ed56-3dc6-a153-048bfa91e623]syslog4j-0.9.46-bin.jar[/url]
[*]可以配置协议、主机地址和端口,但是一种协议只能配置appender实例,如果同一种协议配置多个appender,后一个会覆盖前面的配置信息。
[/list]

log4j.rootLogger=INFO,syslog1
log4j.appender.syslog1=org.productivity.java.syslog4j.impl.log4j.Syslog4jAppender
log4j.appender.syslog1.Facility=LOCAL0
log4j.appender.syslog1.Protocol=udp
log4j.appender.syslog1.host=192.168.8.145
log4j.appender.syslog1.Port=1514
log4j.appender.syslog1.layout=org.apache.log4j.PatternLayout
log4j.appender.syslog1.layout.ConversionPattern=%5p | %c{1}-%M [%d{yyyy-MM-dd HH:mm:ss}] - %m%n

[size=large][color=blue][三]自己实现的SyslogSunjAppender[/color][/size]
[list]
[*]提供一个集成好的jar包下载:[url=http://dl.iteye.com/topics/download/9e6ea7f4-1f45-35d2-af2b-5b8f78871b6b]log4j-1.2.16_michael.jar[/url]
[*]和log4j自带的SyslogAppender相比,多了一个端口参数的配置:SyslogPort
[*]SyslogSunjAppender的源代码下载:[url=http://dl.iteye.com/topics/download/2be96bf7-4c2e-3aa8-b83d-d8346f06d756]SyslogSunjAppender_src.zip[/url]
[/list]

log4j.rootLogger=INFO,syslog2
log4j.appender.syslog2=com.log4j.michael.SyslogSunjAppender
log4j.appender.syslog2.SyslogHost=localhost
log4j.appender.syslog2.SyslogPort=1514
log4j.appender.syslog2.Facility=LOCAL1
log4j.appender.syslog2.header=true
log4j.appender.syslog2.Threshold=INFO
log4j.appender.syslog2.layout=org.apache.log4j.PatternLayout
log4j.appender.syslog2.layout.ConversionPattern=%5p | %c{1}-%M [%d{yyyy-MM-dd HH:mm:ss}] - %m%n


[color=blue][size=medium]测试接收日志可以借助第三方的syslog4j-0.9.46-bin.jar[/size][/color]
windows cmd 下可运行:
[color=red]java -cp .;syslog4j-0.9.46.jar org.productivity.java.syslog4j.server.SyslogServerMain -p 1514 udp[/color]

-----------------------------------分 ------------------------------------隔 ------------------------------------线 --------------------------------------

这篇关于Log4j输出日志到syslog的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/569941

相关文章

神经网络第三篇:输出层及softmax函数

在上一篇专题中,我们以三层神经网络的实现为例,介绍了如何利用Python和Numpy编程实现神经网络的计算。其中,中间(隐藏)层和输出层的激活函数分别选择了 sigmoid函数和恒等函数。此刻,我们心中不难发问:为什么要花一个专题来介绍输出层及其激活函数?它和中间层又有什么区别?softmax函数何来何去?下面我们带着这些疑问进入本专题的知识点: 1 输出层概述 2 回归问题及恒等函数 3

Sapphire开发日志 (十) 关于页面

关于页面 任务介绍 关于页面用户对我组工作量的展示。 实现效果 代码解释 首先封装一个子组件用于展示用户头像和名称。 const UserGrid = ({src,name,size,link,}: {src: any;name: any;size?: any;link?: any;}) => (<Box sx={{ display: "flex", flexDirecti

linux匹配Nginx日志,某个字符开头和结尾的字符串

匹配 os=1 开头, &ip结尾的字符串 cat 2018-06-07.log | egrep -o ‘os=1.*.&ip’ 存入日志。然后使用submit 前面和后面的值去掉,剩下就是需要的字符串。 cat 2018-06-07.log | egrep -o ‘os=1.*.&ip’ >log.log

Log4j用法

日志是应用软件中不可缺少的部分,Apache的开源项目Log4j是一个功能强大的日志组件,提供方便的日志记录,具体请参考Log4j文档指南。 Log4j下载 在apache网站,可以免费下载到Log4j最新版本的软件包 Apache log4j  (推荐) Apache log4j 2 Log4j的包下载完成后,解压,将其中打包好的的log4j-1.x.x.jar导入你的工程

springboot学习02-[热部署和日志]

热部署和日志 热部署 热部署

C# 日志框架Serilog使用

1、框架和说明        C#日志框架Serilog支持多种场景输出,简单验证了一下,比较方便        包的安装,推荐直接使用“推荐NuGet包管理器”安装Serilog.AspNetCore,常见的组件都已经集成在一个包中,使用比较方便 2、配置文件        Serilog可以由配置文件来定义行为,而且配置文件的修改即时生效。参考配置文件如下: {"Serilog":

Android Log日志 - 打印不全问题

AndroidStudio在打印Log的时候目前支持4*1024长度,超出部分不能打印。当你在各种百度之后有对应的解决办法,但是每次都是部分代码,看着都忧伤。索性此次项目调试的数据也是比较多滴,目前就准备对Log开刀来写一个Log类,还是如以往的性格直接写完整的类,方便需要的人用。反正又不是什么高深的东西,为了给被方便同时也是给自己方便。 /*** Relin* 2019-07-10 10:40

C语言中的字符输入/输出和验证输入

在C语言中,字符输入/输出功能允许程序与用户进行交互,读取用户的输入信息并展示输出结果。同时,验证输入的作用在于确保用户输入的数据符合预期,以提高程序的稳定性和可靠性,防止无效输入引发的错误或异常行为,从而提供更好的用户体验。 基础概念 输入(Input):指的是向程序填充数据的过程,通常来源于用户输入、文件读取或其他外部数据源。 输出(Output):指的是将数据显示在屏幕上、打印机上或

注解+Aspect 省时省力的管理好接口日志

背景 无论是对外提供的RPC接口,还是项目内的普通方法,我们都会有需要打印方法入参、出参的需求,方便在遇到问题时通过查看日志快速定位,我们也会需要对方法的执行时间进行打印 方便分析和调优。 比较笨的做法就是在每个需要打印日志的地方使用log.info对参数进行打印,在每个方法内部方法体前后获取系统时间 在最后打印时间差 但这种对方法自身业务逻辑没有什么意义的的代码 侵入性太强 编写时也浪费时间

linux crontab 重启、关闭、开启命令,查看cron日志

计划任务文件位置:var/spool/ 一、 重启: /etc/rc.d/init.d/crond restart 或者 service crond restart 关闭: /etc/rc.d/init.d/crond stop 或者 service crond stop 开启: /etc/rc.d/init.d/crond start 或者 service crond start 二、 查看任