python如何监控程序运行状态_shell脚本-监控python进程是否在运行及启动python进程...

shell脚本-监控python进程是否在运行,没有则重启jingdong_prices_run.py 并发送邮件告知重启时间,否则不重启不发送邮件

定时检测京东商品状态

*/5 * * * * sh /data/jingdong-app-spider-py/shell/check-jingdong-goods-run.sh >/store/logs/jingdong-app-spider-py/startpy.log 2>&1

shell监控python进程

check-jingdong-goods-run.sh

#!/bin/bash

echo "开始检查京东商品jingdong_prices_run程序是否运行..."

cd /data/jingdong-app-spider-py/test

processID=$(ps -ef | grep jingdong_prices_run.py | grep -v "grep" | awk "{print $2}")

echo $processID

# 判断$processID为空,此处意思为如果$processID为空,那么重启

if [ -z "$processID" ]

then

# 启动京东商品jingdong_prices_run程序

echo "京东商品jingdong_prices_run程序未运行, 重新启动中..."

#nohup python3 jingdong_prices_run.py >/dev/null &

nohup python3 jingdong_prices_run.py >/store/logs/jingdong-app-spider-py/nohup.out &

echo "jingdong_prices_run京东商品重启成功..."

# 发送邮件 获取当前ip

ipAdress=$(curl httpbin.org/ip)

echo $ipAdress

nohup python3 /data/jingdong-app-spider-py/common/send_email.py "jingdong_prices_run京东商品程序重启成功..." "${ipAdress}"

else

echo "jingdong_prices_run京东商品程序正在运行中..."

#nohup python3 jingdong_prices_run.py >/store/logs/jingdong-app-spider-py/jingdong_data/date +%F/startpy.log &

#echo "jingdong_prices_run京东商品程序重启成功..."

# 发送邮件

#ipAdress=$(curl httpbin.org/ip)

#echo $ipAdress

#python3 /opt/gh2/app/jingdong-app-spider-py/common/send_email.py "jingdong_prices_run京东商品同步程序重启成功..." "${ipAdress}"

fi

# ps -ef 展示进程

# | grep your_keywords 按关键字筛选

# | grep -v “grep” 屏蔽grep程序本身的进程

# | awk ‘{print $2}’ 只打印第二列

# process_id=${语句} 将语句执行的返回值赋值给process_id,注意等号前后不能有空

# [ -z "$process_id”] 判断$process_id为空

# [[ -z "$process_id”]] 判断$process_id不为空 , 注意这里前后有两个中括号,Shell的这个语法有点奇怪

# kill -9 $process_id 杀掉变量$process_id指定的进程

shell启动python进程

不需要手动 nohup python3 jing_app_run.py >/data/nohup.out/ 2>&1 & 启动,直接运行shell脚本

sh /data/scripts/spider-crawler.sh

#!/bin/bash

PROJECT=`basename $0 | awk -F '_' '{print $1}'`

APP_PATH="/data/app/$PROJECT"

APP_RUN_NAME=`ls $APP_PATH | grep py`

APP_PID=$(ps -ef | grep jing_app_run.py | grep -v grep | awk '{print $2}')

if [ -n "${APP_PID}" ]

then

kill -9 ${APP_PID}

sleep 5

fi

# 启动

cd ${APP_PATH}

nohup python3 ${APP_PATH}/${APP_RUN_NAME} > /data/logs/$PROJECT.out 2>&1 &

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488406.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据流InputStream转字符串

public static String ScreamToString(InputStream in) throws Exception{//定义一个内存输出流ByteArrayOutputStream out new ByteArrayOutputStream();int len0;byte[] btnew byte[1024];while((lenin.read(bt))!-1){out.write(bt,0,len);}String contentnew String(out.to…

matlab fgoalattain,matlab优化工具箱 | 学步园

1工具箱概述1.1 功能(1)求解无约束条件非线性极小值;(2)求解约束条件下非线性极小值,包括目标逼近问题、极大-极小值问题和半无限极小值问题;(3)求解二次规划和线性规划问题;(4)非线性最小二乘逼近和曲线拟合;(5)非线性…

python如何反转列表_四种Python 列表反转显示方法

原标题:四种Python 列表反转显示方法第一种,使用reversed 函数,reversed返回的结果是一个反转的迭代器,我们需要对其进行 list 转换第二种,使用sorted函数,sorted是排序函数,它是对一个列表进行…

自保护、人机互动柔性织物传感器研究取得进展

来源:中国科学院宁波材料技术与工程研究所可穿戴柔性电子器件,因其柔性/拉伸性、质轻、成本低、便携等特性,被广泛应用于人体运动/人体健康的实时监测、人机/脑机交互以及机器学习等领域。但目前仍存在灵敏度及响应速度较低、检测下限较高、检…

什么是对冲基金

对冲基金采用各种交易手段进行对冲、换位、套头、套期来赚取巨额利润。这些概念已经超出了传统的防止风险、保障收益操作范畴。加之发起和设立对冲基金的法律门槛远低于互惠基金,使之风险进一步加大。为了保护投资者,北美的证券管理机构将其列入高风险投…

谐波分析显著性检验matlab,关于谐波检测方法的MATLAB仿真及综合性能分析.pdf

bq谐波检测方法的MATLAB仿真及综合性能分析谐波检测方法的MATLAB 仿真及综合性能分析王 林,吴军基(南京理工大学动力工程学院,江苏 南京 210094 )摘 要:电力系统谐波一般由非线性设备引起的,对电力系 1 基于瞬时无功理论的谐波检测…

Hibernate第十一篇【配置C3P0数据库连接池、线程Session】

Hibernate连接池 Hibernate自带了连接池,但是呢,该连接池比较简单..而Hibernate又对C3P0这个连接池支持…因此我们来更换Hibernate连接池为C3P0 查看Hibernate自带的连接池 我们可以通过Hibernate.properties文件中查看Hibernate默认配置的连接池 hibern…

npm 切换源_【分享吧】verdaccio搭建npm私有仓库

verdaccio搭建npm私有仓库前言随着前端技术的不断发展,前后端分离已成为主流趋势,这就导致了前端承受的分工压力会越来越大,前端项目也将变得十分庞杂,因此在技术方面会考虑按照业务线进行拆分成几个业务系统。这些系统之间如何共…

疫情中的人工智能和大数据“社会实验”,将如何影响我国经济社会发展

来源:三思派最近,上海市科学学研究所编制了《人工智能、大数据支撑新冠肺炎疫情防控报告(1.0版)》。报告预测,疫情过后,人们的生活和工作方式都可能向更加智能化方向发展,一个以智能化、无人化、…

php对mysql进行增删改查,php对mysql进行增删改查

php对mysql进行增删改查/*用户名 : MYSQL_USER密 码 : MYSQL_PASS域 名 : MYSQL_HOST端 口 : MYSQL_PORT数据库名 : MYSQL_DB*/define("MYSQL_USER", "root");define("MYSQL_PASS", "");define("MYSQL_HOST", "127.0.0…

IBM强化Watson对商业语言的理解能力—AI辩论一些关键技术首次商业化

来源:IBM中国2020 年 3 月 11 日,商业人工智能领域领军者 IBM[1]宣布推出几项全新的 IBM Watson 技术,旨在帮助组织机构更清晰地识别、理解和分析英语语言中某些最具挑战性的方面,从而获取更多洞察。全新的 IBM Watson 技术代表着…

删除快捷方式小箭头_修复快捷方式的箭头图标

前一天晚上,用360清理缓存文件后,早上起来一看快捷方式的箭头图标不见了,左下角变成了一片白色。试了很多方法,比如说删除iconcache.db,然后重启资源管理器等等,发现没有用。然后,装上360桌面助…

契约

魔兽争霸3中死亡骑士(Death Knight)出生时就会说一句: The pact is sealed. 契约已签订。 看过N多童话故事和电影的小伙伴们肯定熟悉这种场景: 大反派斗不过主角,处于劣势时,就会与诸如恶魔签订契约&#x…

如何实现对外部php文件的调用,laravel如何引用外部文件

laravel如何引用外部文件,主视图,视图,文件,方式,内容laravel如何引用外部文件易采站长站,站长之家为您整理了laravel如何引用外部文件的相关内容。(1)、首先在app\Http\routes.php中定义路由;Route::get(view,ViewControllerview);Route::get(article,V…

清华大学人工智能深度报告:八大维度解析机器学习

来源:世界人工智能大会机器学习(Machine Learning,常简称为 ML)已经成为了当今的热门话题,从机器学习概念诞生到机器学习技术的普遍应用经过了漫长的过程,众多优秀的学者为推动机器学习的发展做出了巨大的贡…

python冷知识_Python 实用冷门知识整理

1.print 打印带有颜色的信息大家知道 Python 中的信息打印函数 print,一般我们会使用它打印一些东西,作为一个简单调试。但是你知道么,这个 Print 打印出来的字体颜色是可以设置的。一个小例子def esc(code0):return f\033[{code}mprint(esc(…

了解CSS核心精髓(一)

CSS 1.css外联 正确写法&#xff1a;<link rel"stylesheet" href"css/style.css" /> <style type"text/css"> import url(xxx.css); </style> 2.w3c盒子模型与IE盒子模型 W3C 盒子模型的范围包括 margin、border、padding、co…

php中$tpl= add_member_info ;什么意思,DEDECMS会员信息在个人模板info和index的调用问题...

会员信息在个人模板info和index的调用问题&#xff0c;好长时间没解决 论坛发帖没人回答 看了一晚上代码 自己解决了。会员个人空间 index.htm 、 listarticle.htm不能像infos.htm模板一样使用<?php echo GetEnumsValue(pfirst,$row[pfirst]); ?> 语句来调用自定义联动…

【周末阅读】5G时代新型基础设施建设白皮书

来源&#xff1a;智东西【导读】当今世界&#xff0c;新一代信息技术与经济社会深度交融&#xff0c;正引领全球新一轮科技革命和产业变革&#xff0c;其速度、广度、深度前所未有。加快 5G 商用和人工智能、工业互联网、物联网等新型基础设施建设是发挥投资关键作用&#xff0…

pandas取出某一列_Pandas高级运算 | apply与applymap方法详解

大家好&#xff0c;今天我们来聊聊pandas的一些高级运算。在之前文章中&#xff0c;我们介绍了panads的一些计算方法&#xff0c;比如两个dataframe的四则运算&#xff0c;以及dataframe填充Null的方法。今天这篇文章我们来聊聊dataframe中的广播机制&#xff0c;以及apply函数…