一、相关文件

master端:

/srv/salt/tomcat/start.sls               #tomcat启动服务state.sls,须要自己创建

/srv/salt/tomcat/log.sls                 #页面实时显示tomcat启动日志state.sls,须要自己创建

/srv/salt/scripts/checklog.sh                  #/srv/salt/tomcat/log.sls中用到脚本,须要自己创建

minion端:

/ylhb/log/html                 #记录tomcat实时启动日志,自己主动生成,无需创建

/ylhb/log/tomcat-nohup/nohup.out         #tomcat日志文件

/ylhb/log/num.txt             #当前tomcat日志文件行数,自己主动生成,无需创建

二、/srv/salt/tomcat/start.sls文件内容

tomcat_start:
cmd.run:
- name: echo " " > /ylhb/log/html ;wc -l /ylhb/log/tomcat-nohup/nohup.out | awk '{ print $1 }' > /ylhb/log/num.txt;sh /ylhb/product/tomcat/bin/startup.sh
- env:
- LC_ALL: ""
- user: ylhb

三、/srv/salt/tomcat/log.sls文件内容

tomcat_checklog:
cmd.script:
- name: salt://scripts/checklog.sh
- env:
- LC_ALL: ""
- user: ylhb

四、/srv/salt/scripts/checklog.sh文件内容

#!/bin/sh
#
num1=`wc -l /ylhb/log/tomcat-nohup/nohup.out | awk '{ print $1 }'`
num2=`cat /ylhb/log/num.txt`
if [ "$num1" -gt "$num2" ]; then
grep "Server startup in" /ylhb/log/html
if [ "$? " != "0" ];then
echo $num1 > /ylhb/log/num.txt
sed -n `expr $num2 + 1`,`wc -l /ylhb/log/tomcat-nohup/nohup.out | awk '{ print $1 }'`p /ylhb/log/tomcat-nohup/nohup.out >> /ylhb/log/html
else
grep "TotalERROR:" /ylhb/log/html
if [ "$?" != "0" ];then
numerror=`grep -w "Error" /ylhb/log/html | wc -l`
echo -e "\n\nTotalERROR: $numerror" >> /ylhb/log/html
fi
fi
fi
cat /ylhb/log/html

五、功能实现

1.在WEB页面操作启动tomcat服务,调用salt-api接口操作start.sls,同一时候打开新的页面

2.新打开的页面调用salt-api接口操作log.sls,且自己主动刷新页面

如上就可以达到页面实时显示tomcat启动日志功能

基于Saltstatck实现页面实时显示tomcat启动日志(17)的更多相关文章

  1. 【linux】linux重启tomcat + 实时查看tomcat启动日志

    linux重启tomcat命令: http://www.cnblogs.com/plus301/p/6237468.html linux查看toncat实时的启动日志: https://www.cnb ...

  2. linux下打开、关闭tomcat,实时查看tomcat执行日志

     启动:通常是运行sh tomcat/bin/startup.sh   停止:通常是运行sh tomcat/bin/shutdown.sh脚本命令   查看:运行ps -ef |grep tomc ...

  3. Linux下如何查看tomcat是否启动、查看tomcat启动日志

    在Linux系统下,重启Tomcat使用命令的操作! 1.首先,进入Tomcat下的bin目录 cd /usr/local/tomcat/bin 使用Tomcat关闭命令 ./shutdown.sh ...

  4. Linux下如何查看tomcat是否启动、查看tomcat启动日志(转)

    在Linux系统下,重启Tomcat使用命令的操作! 1.首先,进入Tomcat下的bin目录 cd /usr/local/tomcat/bin 使用Tomcat关闭命令 ./shutdown.sh ...

  5. Javaweb项目页面实时显示后台处理结果

    http://www.cnblogs.com/dong-xu/p/6701271.html 此博文甚好,项目参照博主代码可实现. 前端页面: <%@ page language="ja ...

  6. python实现websocket服务器,可以在web实时显示远程服务器日志

    一.开始的话 使用python简单的实现websocket服务器,可以在浏览器上实时显示远程服务器的日志信息. 之前做了一个web版的发布系统,但没实现在线看日志,每次发布版本后,都需要登录到服务器上 ...

  7. python websocket网页实时显示远程服务器日志信息

    功能:用websocket技术,在运维工具的浏览器上实时显示远程服务器上的日志信息 一般我们在运维工具部署环境的时候,需要实时展现部署过程中的信息,或者在浏览器中实时显示程序日志给开发人员看.你还在用 ...

  8. python2.7实现websocket服务器,可以在web实时显示远程服务器日志

    一.开始的话 使用python实现websocket服务器,可以在浏览器上实时显示远程服务器的日志. 之前写了一个发布系统,每次发布版本后,为了了解发布情况(进度.是否有错误)都会登录到服务器上查看日 ...

  9. 运维开发:python websocket网页实时显示远程服务器日志信息

    功能:用websocket技术,在运维工具的浏览器上实时显示远程服务器上的日志信息 一般我们在运维工具部署环境的时候,需要实时展现部署过程中的信息,或者在浏览器中实时显示程序日志给开发人员看.你还在用 ...

随机推荐

  1. c/c++相关面试准备笔记1

    在c++程序中调用被C编译器编译后的函数,为什么要加extern  “C”? C++语言支持函数重载,C语言不支持函数重载.函数被C++编译后在库中的名字与C语言的不同.C++提供了C连接交换指定符号 ...

  2. nvm: node版本管理工具

    安装nvm   curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash node 版本切 ...

  3. hdu 5138(水题)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5138 反着来. #include<iostream> #include<cstdi ...

  4. vagrant virtualbox VM inaccessible解决办法

    vagrant无法访问的提示:Please open VirtualBox and clear out your inaccessible virtual machines or find a way ...

  5. 二十六个月Android学习工作总结【转】

    原文:二十六个月Android学习工作总结 1.客户端的功能逻辑不难,UI界面也不难,但写UI花的时间是写功能逻辑的两倍.     2.写代码前的思考过程非常重要,即使在简单的功能,也需要在本子上把该 ...

  6. VS2010/2012Web负载测试

    原文地址:http://www.cnblogs.com/aarond/archive/2013/04/18/performance.html VS自带的Web负载测试真的很大程度上能和专业的loadr ...

  7. Linux下多进程服务端客户端模型二(粘包问题与一种解决方法)

    一.Linux发送网络消息的过程 (1) 应用程序调用write()将消息发送到内核中 ( 2)内核中的缓存达到了固定长度数据后,一般是SO_SNDBUF,将发送到TCP协议层 (3)IP层从TCP层 ...

  8. Codeforces Round #267 (Div. 2) B. Fedor and New Game【位运算/给你m+1个数让你判断所给数的二进制形式与第m+1个数不相同的位数是不是小于等于k,是的话就累计起来】

    After you had helped George and Alex to move in the dorm, they went to help their friend Fedor play ...

  9. POJ 3620 Avoid The Lakes【DFS找联通块】

    Avoid The Lakes Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6826   Accepted: 3637 D ...

  10. [Python Cookbook] Pandas: Indexing of DataFrame

    Selecting a Row df.loc[index] # if index is a string, add ' '; if index is a number, no ' ' or df.il ...