精华内容
下载资源
问答
  • linux 查询 java 日志输出两份日志

    万次阅读 2015-01-14 14:58:11
    linux 中,我们经常会在运行一个 jar 程序之后随即打开它的 tail -f /xxx/out.log 功能,然后我们就发现一个奇怪的现象,就是所有的日志都被输出两行,而且日志的内容都是一样的,这个很奇怪,为什么呢?...

    在 linux 中,我们经常会在运行一个 jar 程序之后随即打开它的 tail -f /xxx/out.log 功能,然后我们就发现一个奇怪的现象,就是所有的日志都被输出两行,而且日志的内容都是一样的,这个很奇怪,为什么呢?

    通常我们的启动脚本这么写:

    #!/bin/sh
    java -jar dataInsertKeyword.jar &
    tail -f /data/logs/dataInsert/dataInsert.log


    因为我们通常在配置 log4j.properties 文件的时候就指定的如下的输出格式

    #config root logger
    log4j.rootLogger = DEBUG,stdout,rolling_file
    
    
    # Console Appender #
    log4j.appender.stdout = org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.encoding=UTF-8
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d[%p] %c[%M(%L)] - %m%n
    log4j.appender.stdout.Threshold=INFO
    
    
    
    # Rolling File #
    log4j.appender.rolling_file=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.rolling_file.Threshold=INFO
    log4j.appender.rolling_file.encoding=UTF-8
    #windows os
    log4j.appender.rolling_file.File=/data/logs/out.log
    #linux os
    #log4j.appender.rolling_file.File=/data/default/default.log
    log4j.appender.rolling_file.DatePattern='_'yyyy-MM-dd_HH
    log4j.appender.rolling_file.layout=org.apache.log4j.PatternLayout
    log4j.appender.rolling_file.layout.ConversionPattern=%d[%p] %c[%M(%L)] - %m%n

    这样就导致一个问题,本身在我们启动程序的时候,日志已经被输出到了 stdout 了,stdout 就是输出到控制台的意思,本来就输出一次了,然后我们又执行了

    tail -f /data/logs/dataInsert/dataInsert.log

    命令,吧日志又输出一次,所以我们会看到日志被打印两次,实际上是一次,只不过我们看到了两次而已。





    展开全文
  • 这个脚本提供Java进程的启动,停止,重启,查看日志文件的功能。 使用时只需修改PRO_DIR、PRO_LOG_FILE、PID_FILE、MAIN_CLASS、SERVICE_NAME、SHELL_HOME参数即可,下面的脚本基本不用动。 使用方式: 将...

    这个脚本提供Java进程的启动,停止,重启,查看日志文件的功能。
    使用时只需修改PRO_DIR、PRO_LOG_FILE、PID_FILE、MAIN_CLASS、SERVICE_NAME、SHELL_HOME参数即可,下面的脚本基本不用动。


    使用方式:
    将脚本复制到一个脚本文件,例如名字为a.sh
    那么
    启动使用 sh a.sh start
    停止使用 sh a.sh stop
    重启使用 sh a.sh restart
    查看日志 sh a.sh log

    #!/bin/sh
    PRO_DIR=/apps/webapp/sms-enginne
    PRO_LOG_FILE=/apps/webapp/sms-enginne/logs/task.log
    PID_FILE=.task.pid
    MAIN_CLASS=com.example.sms.task.TaskMain
    SERVICE_NAME=TaskMain
    SHELL_HOME=$PRO_DIR/shells
    
    cd $PRO_DIR/bin
    
    case "$1" in
        start)
            nohup java -cp $PRO_DIR/lib/*:$PRO_DIR/bin $MAIN_CLASS >$PRO_LOG_FILE 2>&1 &
            echo $! > $PRO_DIR/$PID_FILE
            echo "****start $SERVICE_NAME for pid $!*****"
            ;;
        stop)
            if [ ! -f "$PRO_DIR/$PID_FILE" ]; then
              echo "$PRO_DIR/$PID_FILE is not exists, please check service status."
            else
              kill `cat $PRO_DIR/$PID_FILE`
              rm -rf $PRO_DIR/$PID_FILE
              echo "****stop $SERVICE_NAME****"
            fi
            ;;
        restart)
            $SHELL_HOME/$0 stop
            sleep 2
            $SHELL_HOME/$0 start
            echo "****restart $SERVICE_NAME****"
            ;;
        log)
            tail -F $PRO_LOG_FILE
            ;;
        *)
            echo "to run command:"
            echo "[start] [stop] [restart] [log]"
            ;;
    
    esac
    exit 0
    
    展开全文
  • 查看linux下tomcat启动日志

    千次阅读 2020-08-12 21:31:11
    查看linux下tomcat启动日志 但是通过浏览器无法访问 备注:防火墙常用操作 通过日志文件查找浏览器无法访问原因 查看linux下tomcat启动日志 启动tomcat之后,通过ps -ef|grep tomcat查看tomcat是有进程的 ...

    目录

     

    查看linux下tomcat启动日志

    但是通过浏览器无法访问

    备注:防火墙常用操作

    通过日志文件查找浏览器无法访问原因


    查看linux下tomcat启动日志

    启动tomcat之后,通过ps -ef|grep tomcat查看tomcat是有进程的

    [root@localhost logs]# ps -ef|grep tomcat
    root      5982     1  7 21:16 pts/0    00:00:18 /honry/jdk1.8.0_161//bin/java -Djava.util.logging.config.file=/honry/apache-tomcat-8.5.43/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /honry/apache-tomcat-8.5.43/bin/bootstrap.jar:/honry/apache-tomcat-8.5.43/bin/tomcat-juli.jar -Dcatalina.base=/honry/apache-tomcat-8.5.43 -Dcatalina.home=/honry/apache-tomcat-8.5.43 -Djava.io.tmpdir=/honry/apache-tomcat-8.5.43/temp org.apache.catalina.startup.Bootstrap start
    root      6262  4090  0 21:21 pts/0    00:00:00 grep --color=auto tomcat
    

    但是通过浏览器无法访问

    排除防火墙的原因之后,即使关闭防火墙还是不行,那可以通过查看tomcat启动日志来查看

    备注:防火墙常用操作

    重启防火墙
    sudo systemctl reload firewalld
    关闭防火墙
    sudo systemctl stop firewalld
    启动防火墙
    sudo systemctl start firewalld
    

    通过日志文件查找浏览器无法访问原因

    在tomcat目录下,即/apache-tomcat-8.5.43/logs 有启动日志如下

    
    [root@localhost logs]# pwd
    /honry/apache-tomcat-8.5.43/logs
    [root@localhost logs]# ^C
    [root@localhost logs]# ll
    total 92
    -rw-r-----. 1 root root 12954 Aug 11 00:01 catalina.2020-08-11.log
    -rw-r-----. 1 root root 23901 Aug 12 21:17 catalina.2020-08-12.log
    -rw-r-----. 1 root root 36952 Aug 12 21:17 catalina.out
    -rw-r-----. 1 root root     0 Aug 11 00:01 host-manager.2020-08-11.log
    -rw-r-----. 1 root root     0 Aug 12 20:56 host-manager.2020-08-12.log
    -rw-r-----. 1 root root   459 Aug 11 00:01 localhost.2020-08-11.log
    -rw-r-----. 1 root root   918 Aug 12 21:17 localhost.2020-08-12.log
    -rw-r-----. 1 root root     0 Aug 11 00:01 localhost_access_log.2020-08-11.txt
    -rw-r-----. 1 root root  1638 Aug 12 21:01 localhost_access_log.2020-08-12.txt
    -rw-r-----. 1 root root     0 Aug 11 00:01 manager.2020-08-11.log
    -rw-r-----. 1 root root     0 Aug 12 20:56 manager.2020-08-12.log
    

    其中以catalina开头的文件里面包含了启动的日志,后缀根据时间命名

    使用 tail -1000f catalina.2020-08-12.log查看日志,我的可以明显看到Address already in use,端口被占用,切换tomcat端口或者查找到当前端口被占用的线程,使用kill -9 进程号,再次重启tomcat

    [root@localhost logs]# tail -1000f catalina.2020-08-12.log
    。。。。
    12-Aug-2020 21:16:53.429 SEVERE [main] org.apache.catalina.core.StandardService.initInternal Failed to initialize connector [Connector[HTTP/1.1-8080]]
            org.apache.catalina.LifecycleException: Failed to initialize component [Connector[HTTP/1.1-8080]]
                    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:112)
    。。。。
            Caused by: java.net.BindException: Address already in use
                    at sun.nio.ch.Net.bind0(Native Method)
                    at sun.nio.ch.Net.bind(Net.java:433)
                    at sun.nio.ch.Net.bind(Net.java:425)
    

     

    展开全文
  • 该资源包含启动springboot项目的shell脚本文件、以及日志分割必备的cronolog压缩文件
  • 自己编写Java程序,注册为Linux Service服务,通过 service xxx start 启动后,发现日志文件中文乱码,如果不使用服务启动,则没有乱码。 出现此问题可能是系统环境变量设置不正确,也可能是服务启动工具没有添加...

    自己编写Java程序,注册为Linux Service服务,通过 service xxx start 启动后,发现日志文件中文乱码,如果不使用服务启动,则没有乱码。
    出现此问题可能是系统环境变量设置不正确,也可能是服务启动工具没有添加中文的设置,最终的结果导致以服务形式启动的程序输出的日志文件乱码,在操作系统本身支持中文的情况下 排查方法如下:

    1、首先查看自己系统中环境变量LANG的设置
    使用命令:echo $LANG,如下所示

    [root@localhost data]# echo $LANG
    zh_CN.UTF-8
    如果输出的不是以上的结果,则需要在 系统 profile文件中进行设置,步骤如下:

        vim /etc/profile
    
        在文件最后写入:
    
        export LANG=zh_CN.UTF-8
    
        保存后,重新加载 profile文件:source /etc/profile,重新查看LANG设置即可看到UTF-8设置。
    

    2、查看服务启动工具对环境变量的使用
    使用命令 :grep env /sbin/service
    在这里插入图片描述

    将LANG="$LANG" 配置在env -i 后面,最后的结果如下所示,操作过程:
    
    编辑service文件
    
    vim /sbin/service
    
    在env -i 后面加上 LANG="$LANG"  。
    
    添加后  重启操作系统
    
    重新运行服务即可解决 日志文件乱码的问题。
    
    展开全文
  • linux 中让java进程以后台形式执行...我们需要用java -jar方式启动,并且将日志输出到zop-monitor-web.log文件中,并且以后台程序启动。 完整的命令将是: java -jar /home/pro/application/monitor/zop-monitor-web.j
  • linux java程序控制台日志输出

    千次阅读 2018-12-07 13:36:57
    linux java程序控制台日志输出 控制台日志输出到nohup.out文件中 nohup java -jar xx.jar>nohup.out 2>&1 & 不保存控制台日志 nohup java -...
  • linux启动java命令

    千次阅读 2020-04-17 09:39:21
    一、启动jar包命令 nohup java -jar -Xms128M -Xmx1024M -server.port=9002 XX.jar > XX.out 2>&1 &...java启动程序 -jar:启动类型 -Xms128M -Xmx1024M:指定内存,Xms一般为最大...
  • Maven打包和Linuxjava命令启动

    千次阅读 2019-11-06 14:17:32
    Maven 项目如果是多模块的,在mvn install后,记得cd 到你需要打包的那个目录后再运行打包命令,-P是参数,test是我的测试环境,根据...启动jar包,输出日志到XXX.log文件中,将标准错误重定向到标准输出,最后的&...
  • Linux 如何将java服务注册为Linux系统服务启动 前言 当注册为系统服务启动之后,对于程序的管理更加简单方面。 systemctl start test-demo-api.service //启动项目 systemctl stop test-demo-api.service //...
  • linux根据查看java进程日志的方法

    千次阅读 2020-03-03 23:55:08
    1)先用jps查看进程pid,该进程pid为7233 2)cd /proc/7233/fd,然后用ll查看目录下文件
  • linux启动java -jar在后台运行

    千次阅读 2019-07-09 11:32:26
    1.linux默认在后台运行都是通过'&'实现的 java -jar shandong_yantai.jar & 2.linux后台运行,推荐使用 ...3.带日志启动 nohup java -jar shandong_yantai.jar > run.log & 4.带日志带j...
  • 启动java程序 (1)直接启动,控制台退出则关掉应用 java -jar uap-register-...(3)后台启动并且输出日志,控制台退出不会关掉应用 nohup java -jar uap-register-server-1.0.0.jar >> ./register.log.
  • linuxjava应用启动参数配置

    万次阅读 2014-05-18 10:03:51
    必选: 1、jvm类型 -server 一定要作为第一个参数,在多个CPU时性能佳,默认模式。 -server 默认,服务端模式,启动慢,运行快,占用内存较大,...java -client -XX:+PrintFlagsFinal -version 2>&1 | grep -i -E
  • 查看最近500行日志:tail -500nohup.out 实时查看启动日志 :tail -f nohup ...给nohup启动日志存入自命名文件并实时查看 :nohup java -jar boot-1.6.1.jar ->test1.txt & tail -f test1.txt ...
  • linux启动weblogic,并且查看启动日志

    万次阅读 2014-01-03 16:22:02
    cd /home/weblogic/Oracle/Middleware/user_projects/domains/newbase_domain //进入到weblogic的启动日志 ps -ef | grep java //看java进程 nohup ./startWebLogic.sh & //启动weblogic进程 ail -f nohup.out
  • linux java jar包启动停止脚本

    千次阅读 2018-09-01 07:33:57
    启动 脚本 #设置工程路径 ...#nohup后台启动,输出日志到epas.log nohup java -jar epas.jar >epas.log & #打印日志 tail -f epas.log   停止脚本 关闭指定端口进程 kill -9 $(netst...
  • Linux系统下,重启Tomcat使用命令的操作! 1.首先,进入Tomcat下的bin目录 cd /usr/local/tomcat/bin 使用Tomcat关闭命令 ./shutdown.sh 查看Tomcat是否以关闭 ps -ef|grep java 如果显示以下相似信息,...
  • 如何把java程序作为Linux服务启动

    万次阅读 2017-09-20 22:42:06
    java程序作为Linux服务启动前言当作为服务启动之后,对于程序的管理更加简单方面了,通过命令行systemctl start xxx.service //启动项目systemctl stop xxx.service //停止项目systemctl restart xxx.service //重启...
  • Linux查看tomcat启动状态,查看tomcat日志 一、查看tomcat所在路径 find / -name ‘tomcat’ 二、进入tomcat所在路径的bin目录 cd /usr/local/tomcat/bin 1.tomcat启动命令 ./startup.sh 2.tomcat停止命令 ./...
  • Java项目开发过程中经常会碰到将Java应用程序布置到Linux下的需求,很多时候还有系统开机自动启动的要求。这里我整理了一个简单明了的版本,大家可以在此基础上做二次开发。 #!/bin/sh # #该脚本为Linux启动java...
  • linuxjava写程序报异常java.net.InetAddress.getLocalHost(InetAddress.java:1505)解决在一台机器上部署带有spring boot admin 的程序的时候 发现注册不上,仔细看启动日志发现错误日志如下: 2017-04-25 17:32...
  • 启动之后,会在jar所在目录生成一个nuhup.log日志文件,记录控制台的日志输出。 但这是什么意思呢? 划重点!划重点!!!其实就是两个要点:输出什么 和 输出到哪 。 他们以符号“>”进行划分
  • 今天在发布测试环境服务的时候,没有使用Java启动命令,而是选择使用最开始配置的启动脚本。 发现没有效果,不光没有重启,还把现存的服务给挂掉了… 再次调用重启脚本,查看日志发现没有任何响应日志! 1.使用java ...
  •  nohup java -jar $APP_NAME > nohup.log 2>&1 &  echo "${APP_NAME} start success"  fi } stop(){  is_exist  if [ $? -eq "0" ]; then  kill -9 $pid  else  echo "${APP_NAME} is not running...
  • Linux 下使用Shell脚本启动Java应用

    万次阅读 2018-05-06 19:04:59
    最近项目有需要的关系,就抽出点时间研究了一下 Linux 下使用脚本启动Java应用的方式。很简单,大家作为参考。 这个脚本是在网上找到一个挺好的通用 shell 脚本。只需要修改一些配置变量,就可以用来做起动脚本了...
  • Linux查看日志启动服务、常用命令

    千次阅读 2020-12-04 23:01:11
    ps -ef |grep java 查看包含“java”的所有进程 (ps -ef|grep svn) kill -9 进程号 杀掉自己需要重新启动的进程 cd Oracle/Middleware/user_projects/domains/base_domain/bin 切到该目录下 nohup ./startWebLogic...
  • linux启动 java -jar 后台运行程序

    千次阅读 2018-12-26 16:17:22
    linux启动 java -jar 后台运行程序 直接用java -jar xxx.jar,当退出或关闭shell时,程序就会停止掉。以下方法可让jar运行后一直在后台运行。 java -jar xxx.jar & 说明: 在末尾加入 & 符号 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 132,071
精华内容 52,828
关键字:

linux查询java启动日志

java 订阅
linux 订阅