ホームページ 運用・保守 Linuxの運用と保守 Crontab を使用して Linux で Tomcat アプリケーションを定期的に監視および保守する方法

Crontab を使用して Linux で Tomcat アプリケーションを定期的に監視および保守する方法

May 14, 2023 am 08:07 AM
linux tomcat crontab

监测的应用接口: 新闻接口、天气接口
处理方法:应用接口不可用时自动重启tomcat,并发送告警邮件给相关人员

#!/bin/bash
#---------------------------------------------------------
# 功能说明:
#	监控指定http服务是否可用,如果不可用立即重启tomcat
#
# 使用说明:
#	1. 将此脚本放置在/home/opentsp/crontab/目录下。
#	2. 修改脚本执行权下为可执行权限。
#	3. 添加到定时任务中,定时执行时间(建议为20分钟)
#	4. 修改邮件发送人员信息列表(当服务重启时发邮件给相关人员)
#                    - 周凌飞(2014-08-13)
#---------------------------------------------------------
export lc_all=zh_cn.utf-8

#网站地址、参数
server_name="趣驾云接口服务"
url_2="http://127.0.0.1/get_rss_news?p=%7b%27chid%27:%27tiyu%27%7d"
keyworld_2=&#39;<title>&#39;
url_3="http://127.0.0.1/get_json_weather?p=%7blon:116.407617,lat:39.993956,date:1%7d"
keyworld_3=&#39;temperature&#39;

#邮件发送列表
mail_ary=(
xxxxxxxxx@navinfo.com
xxxxxxxxx@navinfo.com
xxxxxxxxx@navinfo.com
)

#接口调用失败的处理方法
function dofail(){
	local ipinfo=$(ifconfig |sed -n &#39;2p&#39;|awk &#39;{print substr($2,6)}&#39;);
	# 发送邮件
	for _v in ${mail_ary[*]} ; do
		echo "[$server_name 异常] - [$(date -d "0 min" +"%y-%m-%d %h:%m:%s")] - [请求地址: $1] - [请求返回码: $2]" | mail -s ${ipinfo}服务异常 ${_v}
	done
	# 写入日志
	echo "[error] - [$(date -d "0 min" +"%y-%m-%d %h:%m:%s")] - 返回码[$2] - 重启tomcat服务" >> detect-http.log
	# 关闭tomcat
	sh /home/opentsp/crontab/ibr-shutdown.sh
	exit;
}

#请求超时时间设置
time_out=40
function docheck(){
	local url_x=$1;
	local keyworld_x=$2;
	http_status_code=`curl -m $time_out -o /dev/null -s -w "%{http_code}" "${url_x}"`
	if [ $http_status_code != 200 ];then
		#请求失败
		echo "-> fail - 返回码${http_status_code}";
		dofail ${url_x} ${http_status_code};
	else
		#服务器正常响应,检查返回内容
		if curl -m ${time_out} -s ${url_x} | grep -q ${keyworld_x};then
			echo "-> success";
		else
			echo "->> fail";
			# 返回内容错误处理
			dofail ${url_x} ${http_status_code};
		fi
	fi
}

#
#检查 - 新闻
docheck ${url_2} ${keyworld_2}
#检查 - 天气
docheck ${url_3} ${keyworld_3}

将以上代码放入到linux的定时任务中即可,定时任务时间建议为20分钟一次。

以上がCrontab を使用して Linux で Tomcat アプリケーションを定期的に監視および保守する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ホットトピック

PHPコンテナを自動構造をサポートする方法は? PHP環境の継続的に統合されたCI構成方法 PHPコンテナを自動構造をサポートする方法は? PHP環境の継続的に統合されたCI構成方法 Jul 25, 2025 pm 08:54 PM

PHPコンテナが自動構造をサポートできるようにするために、コアは連続統合(CI)プロセスの構成にあります。 1. DockerFileを使用して、基本的な画像、拡張インストール、依存関係管理、許可設定など、PHP環境を定義します。 2. GitlabciなどのCI/CDツールを構成し、.gitlab-ci.ymlファイルを介してビルド、テスト、展開段階を定義して、自動構造、テスト、展開を実現します。 3. phpunitなどのテストフレームワークを統合して、コードの変更後にテストが自動的に実行されることを確認します。 4. Kubernetesなどの自動展開戦略を使用して、deployment.yamlファイルを介して展開構成を定義します。 5. DockerFileを最適化し、マルチステージ構造を採用します

独立したPHPタスクコンテナ環境を構築する方法。 PHPタイムタイムスクリプトを実行するためにコンテナを構成する方法 独立したPHPタスクコンテナ環境を構築する方法。 PHPタイムタイムスクリプトを実行するためにコンテナを構成する方法 Jul 25, 2025 pm 07:27 PM

独立したPHPタスクコンテナ環境の構築は、Dockerを通じて実装できます。特定の手順は次のとおりです。1。基礎としてDockerとDockerMomposeをインストールします。 2。DockerFileおよびCrontabファイルを保存するための独立したディレクトリを作成します。 3. dockerfileを書き込み、phpcli環境を定義し、cronと必要な拡張機能をインストールします。 4.タイミングタスクを定義するためにCrontabファイルを書きます。 5。Docker-Compose.ymlマウントスクリプトディレクトリを作成し、環境変数を構成します。 6.コンテナを起動し、ログを確認します。 Webコンテナでタイミングタスクを実行するのと比較して、独立したコンテナには、リソースの分離、純粋な環境、強力な安定性、容易な拡張の利点があります。ロギングとエラーキャプチャを確保するため

Linux vs Windows:どのオペレーティングシステムが優れていますか? Linux vs Windows:どのオペレーティングシステムが優れていますか? Jul 29, 2025 am 03:40 AM

Windowsisbetterforbeginnersduetoeaseofuse、SeamlesshardwareCompatibility、およびSuportformainStreamSoftWareLikemicRosoftOfficeanDadobeapps.2.linuxoutperformsonoldowsonolrow-resourcehardwarewithfasterbottimes、lower-system-requirements.

Linuxでハードドライブを安全に消去する方法 Linuxでハードドライブを安全に消去する方法 Jul 24, 2025 am 12:08 AM

ターゲットハードディスクデバイス名( /dev /sdaなど)を確認して、システムディスクの誤って削除しないようにします。 2。sudoddif=/dev/zeroof =/dev/sdxbs = 1mStatus = 1mStatusを使用して、ほとんどのシナリオに適したフルディスクのゼロ値を上書きします。 3. 3つのランダムデータ上書きにSudoshred-V-N3/DEV/SDXを使用して、復元できないことを確認します。 4.オプションで、破壊的な書き込みテストのためにsudobadblocks-wsv/dev/sdxを実行します。最後に、sudohexdump-c/dev/sdx |ヘッドを使用して、それがすべてゼロで完全な安全な消去であるかを確認します。

CronとAnacronでLinuxのタスクをスケジュールする方法 CronとAnacronでLinuxのタスクをスケジュールする方法 Aug 01, 2025 am 06:11 AM

cronisusedusedusedusedusedusedulingonalways-ossystems、whileanacronuresuressuressursunsystystemstature n't continuouslylypowered、suthaslaptops;

端末を使用してLinuxにソフトウェアをインストールする方法は? 端末を使用してLinuxにソフトウェアをインストールする方法は? Aug 02, 2025 pm 12:58 PM

Linuxにソフトウェアをインストールする主な方法は3つあります。1。apt、dnf、またはpacmanなどのパッケージマネージャーを使用し、Sudoaptinintallcurlなどのソースを更新した後にインストールコマンドを実行します。 2。.DEBまたは.RPMファイルの場合、DPKGまたはRPMコマンドを使用してインストールし、必要に応じて依存関係を修復します。 3. SnapまたはFlatpakを使用して、バージョンの更新を追求しているユーザーに適したSudosnapInstallソフトウェア名など、プラットフォームにアプリケーションをインストールします。より良い互換性とパフォーマンスのために、システム独自のパッケージマネージャーを使用することをお勧めします。

Linuxでの高性能ゲームの究極のガイド Linuxでの高性能ゲームの究極のガイド Aug 03, 2025 am 05:51 AM

choosepop!_os、ubuntu、nobaralinux、orarchlinuxforoptimalgamingminimaloverhead.2.installofficialnvidiaproprietarydriversfornvidiagpus、suseup to-datemesaandkernelverversionsionsionsionsionsipuspuspus

Linux対Windowsの主な長所と短所は何ですか? Linux対Windowsの主な長所と短所は何ですか? Aug 03, 2025 am 02:56 AM

Linuxは古いハードウェアに適しており、セキュリティが高く、カスタマイズ可能ですが、ソフトウェアの互換性が弱いです。 Windowsソフトウェアはリッチで使いやすいですが、リソースの利用率が高くなっています。 1。パフォーマンスの観点から、Linuxは軽量で効率的で、古いデバイスに適しています。 Windowsには高いハードウェア要件があります。 2。ソフトウェアの観点から、Windowsにはより広い互換性、特にプロフェッショナルなツールやゲームがあります。 Linuxは、ツールを使用してソフトウェアを実行する必要があります。 3。セキュリティの観点から、Linux Permission Managementはより厳しく、更新は便利です。 Windowsは保護されていますが、まだ攻撃に対して脆弱です。 4。使用が難しいという点では、Linux学習曲線は急です。 Windows操作は直感的です。要件に従って選択します。パフォーマンスとセキュリティを備えたLinuxを選択し、互換性と使いやすさのWindowsを選択します。

See all articles