上一篇是个简单的能够运行而且写入日志的脚本,可是假设放到生产环境上就显得太粗糙了,所以须要进一步的优化: #! /bin/bash if [ -d "/opt/bmc" ] ; then if [ -f "/opt/bmc/usysfault.log" ] ; then { date +"%Y-%m-%d %H:%M:%S" /usr/lpp/diagnostics/bin/usysfault #要运行的命令的绝对路径 } > /opt/b…
项目中需要将上传的数据输出到指定的log文件,之前对log4j缺少深入认识,普遍将整个应用的日志到输出到一个文件. 在经理的帮助下,业务数据可以直接输出到指定的log文件,现将配置及使用流程整理一下. log4j.properties配置 log4j.logger.userLog= INFO,userLogFile log4j.appender.userLogFile = org.apache.log4j.DailyRollingFileAppender log4j.appender.userL…
通常我们项目里,有一些重要的日志想单独的输出到指定的文件,而不是全总输出到系统的日志文件中.那么我们log4j为我们提供了这种功能,以下我们来一步一步看是怎么做的.这里以property的配置方式写.xml方式类似,想了解的,能够看官方文档. 这里測试的项目包结构例如以下: log4j 主要由三部分组成:Loggers, Appenders 和Layouts,(appender 能够理解为输出的目的地) 咱们的log4j.properties或log4j.xml 里能够配置多个logger, 每…
參考资料:http://logging.apache.org/log4j/1.2/manual.html 通常我们项目里,有一些重要的日志想单独的输出到指定的文件,而不是全总输出到系统的日志文件中.那么我们log4j为我们提供了这种功能,以下我们来一步一步看是怎么做的.这里以property的配置方式写.xml方式类似,想了解的,能够看官方文档. 这里測试的项目包结构例如以下: log4j 主要由三部分组成:Loggers, Appenders 和Layouts,(appender 能够理解为输…
按照习惯性思维,log4j2中xml中取系统属性应该和log4j一样,但是结果却并不是我们想的这样,存在一定的差别,log4j中的配置可参考 log4j配置文件动态指定日志文件名称 . 现在就来看看到底有什么区别,java代码这块没什么变化: if (args.length >= 0) { System.setProperty("log4fFile", args[0]); } else { System.setProperty("log4fFile", &qu…
Log4j 是 Apache 的一个开放源代码项目,通过使用 Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI 组件.甚至是套接口服务器.NT 的事件记录器.UNIX Syslog 守护进程等:我们也可以控制每一条日志的输出格式:通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程.最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码. 应项目需求,需要处理项目中某些java类所产生的跑批日志信息和平常操作产生的业务日志信息分开保存…
Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境. 1. 配置文件 Log4J配置文件的基本格式如下: #配置根Logger log4j.rootLogger = [ level ] , appenderName1, appenderName2, … #配置日志信息输出目的地Appender log4j.appender.appenderName…
原本的日志文件配置如下: <?xml version="1.0" encoding="UTF-8"?> <configuration scan="true" scanPeriod="60 seconds" debug="false"> <contextName>logback</contextName> <!--定义日志文件的存储地址 勿在 LogBac…
普通的log4j.properties 定义: ### set log levels ### log4j.rootLogger = debug,D,E ## Disable other log log4j.logger.org.springframework=OFF log4j.logger.org.apache.struts2=OFF log4j.logger.com.opensymphony.xwork2=OFF log4j.logger.com.ibatis=OFF log4j.logge…
如果在实际应用中需要输出独立的日志文件,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢? 先看一个常见的log4j.properties文件,它是在控制台和test.log文件中记录日志: 复制代码 代码如下: log4j.rootLogger=DEBUG, stdout, logfile log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log…
1. Gradle Daemon也就是Gradle守护进程 Gradle需要运行在一个Java虚拟机中,每一次执行gradle命令就意味着一个新的Java虚拟机被启动,然后加载Gradle类和库,最后执行构建.这样,构建起来会花费大量的时间在Java虚拟机的启动与关闭. 通过Gradle 守护进程,只需要启动一次Java虚拟机,之后就可以再利用,无需再次重启Java虚拟机.这样就达到缩短构建时间的目的. 2. Java虚拟机,每存在一个main函数就会新创建一个jvm,也就是说一台机器上可以创建…
首先需要定位获取任务的运行日志或者报错信息,才能定位问题. 通过shell调用有些脚本的话,日志信息会打印在shell里.不过也有用户在shell里调用正常,但是到crontab调用的时候就出错并且没日志了. 针对这种情况,可以在crontab里把任务执行的输出记录下来,后续出了问题可以到日志文件里获取任务的日志.可以参考:  abc -f xxx.sql >> /home/admin/logs/xxx.log 2>&1  待续...…
如果用nohup启动jar包的话,默认的日志文件就是nohup.out,那么如果启动多个jar包的话,看日志文件就麻烦了,因为他们都会写入到nohup.out文件中. 所以我们来指定一下不同jar包的日志文件名: [prize@centos ~]$ mkdir log [prize@centos ~]$ nohup java -jar dianyixia--SNAPSHOT.jar > log/dianyixia.log & [] [prize@centos ~]$ nohup: ignor…
shell 脚本如下: logFile=/usr/local/log/$today.txt exec >> $logFile 2>&1 1为标准输出stdout.2为标准错误stderr.…
log4j.properties: log4j.logger.myTest=DEBUG,console,FILE log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.threshold=INFO log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.Conversi…
# -*- coding: UTF-8 -*- #!/bin/env python3 # filename readFromKafkaStreamingGetLocation.py import IP from pyspark import SparkContext from pyspark.streaming import StreamingContext from pyspark.streaming.kafka import KafkaUtils import datetime class…
SiftingAppender https://www.mkyong.com/logging/logback-different-log-file-for-each-thread/…
摘要: 作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 快速mark一下这个命令细节,免得以后使用又忘记了 大家都知道可以用echo来输出内容到文件,比如 echo “hello,word”>> temp.txt 那么我现在想把hadoop或者spark的命令执行的屏幕输出到文件怎么办?很简单,命令如下 hadoop jar *.jar $mrClass > mr.log 2>&1 注意上面命令 *.jar和$mrCl…
reference: https://unix.stackexchange.com/questions/182537/write-python-stdout-to-file-immediately   立即输出print内容到文件 $ export PYTHONUNBUFFERED=1 $ ./myscript.py      …
#!/bin/bash ################################################# # # INSTALL JDK AUTOMATICALLY # # author: jeffzhao # # ################################################# cmd_path=`pwd` jdk_package_path="./" jdk_install_path="/opt/jdk" jdk…
当系统出现问题时,分析java虚拟机GC日志可以帮助我们定位问题,一般来说, 我们可以通过制定JVM参数使tomcat保存GC日志文件,具体实现如下: Windows下: 找到tomcat的解压目录,进入bin文件夹,修改catalina.bat,在第一行加入如下代码 set "JAVA_OPTS=%JAVA_OPTS% -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:D:\MyDisk\gc.log" GC日志文件路径可自己制定,…
使用tee命令: sh portal/main.sh |tee log.txt 获取脚本父类路径cmddir="`dirname $0`"…
我们在项目当中经常会使用log4j进行日志记录,偶尔会遇到一些要求,比如日志文件名称按照启动参数动态配置,而不去修改log4j.xml,比较简单的一种做法是,通过设置系统属性的方式实现,代码: if(args.length>=0){ System.setProperty("log4fFile", args[0]); }else{ System.setProperty("log4fFile","log/runtime.log"); } xml…
cat diffarray.sh #!/bin/bash arry_list1=(1 2 3 4 5 6 7 8 9) arry_list2=(3 5 8) declare -a diff_list t=0 flag=0 echo arry_list1=${arry_list1[@]} echo arry_list2=${arry_list2[@]} for list1_num in "${arry_list1[@]}" do echo list1_num is ${list1_num…
一.概述 在实际开发中,我们写好的代码,往往打成war包或jar包,通过winscp或其他软件将其上传至服务器,然而这样非常大的一个弊端就是不利于开发,为什么这么说呢?假如我们刚刚将springboot项目达jar包通过winscp部署在linux系统中,然而各种突如其来.意想不到的bug接踵而来,你在本地测试调试bug,难道你要一次又一次的打jar包,上传至服务器?我想你会疯了吧,哈哈,言归正传. 运行java项目的本质,就是让jvm运行.class文件(纯属个人理解,意思你懂就好),所以我们…
问题出现的场景大概就是 1  cron调用一个python脚本 2  python脚本中调用一个shell脚本(对日志分析)获取shell输出然后发送邮件 类似一个监控任务. 直接运行python脚本没有问题,可是写在cron中之后.shell脚本中的相对路径就找不到了,总是提示无法找到某些文件 后来解决的问题就是使用log文件的绝对路径,执行就正常了. google了一些,发现非常多人也遇到过类似的问题,可能和cron的机制有关系. 大部分人的问题都是由于环境变量造成的.由于cron是一个独立…
如果是希望日志文件按常见的日期格式动态命名,没什么好说的,直接修改app.config <param name="DatePattern" value="yyyyMMdd".log"" /> 但我遇到的一个场景,是同一个exe要运行多个实例,如何分别写入不同的日志文件呢? 参考过 动态修改log4net组件的日志文件名 运行的结果是新的 log文件确实产生了,但是日志记录并不能写入进去,加之年代久远,也就没有跟原作者讨论的激情了 后来…
在测试程序时,有时候运行一次可能需要很久,把日志文件保存下来是很有必要的,本文给出了scala程序输出日志文件的方式,同时使用本人的另一篇博客中介绍的将log4j.properties放到程序jar包之外的方式,从而可以方便地修改日志显示的级别,日志文件路径等 链接:http://www.cnblogs.com/starwater/p/6703702.html 配置文件 首先是log4j.properties的配置 要实现的功能有 1.定义日志级别 2.输出日志到文件,并且控制日志文件大小 3.…
引用:https://blog.csdn.net/guotao15285007494/article/details/84136234 最近在Linux上部署视频流推送应用时,由于网络不稳定等原因程序会不断的输出错误信息,结果导致程序运行一天下来日志文件直接占满磁盘,解决方法就是不再输出日志文件,命令如下: 只输出错误信息到日志文件: nohup ./program >/dev/null 2>log &什么信息也不要: nohup ./program >/dev/null 2&g…
tomcat-9.0.0 将程序中            System.out.println("------------这是输出语句System.out.println()-------------");输出到tomcat 的日志文件中 只需修改tomcat目录中conf-web.xml  中   debug-value   改为1   默认是0 <servlet> <servlet-name>default</servlet-name> <…