php-fpm で Out of memoryが発生した際にメール通知する(AWS CloudWatch , Amazon SNS)
AWS CloudWatch LogsエージェントでAmazon EC2上のNginxのaccess.log , error.log , php-fpm error.log , Linuxのmessages , secureログを収集するで収集したログを見ていてphp-fpmのwww-error.logで「Out of memory」が結構出力されていた、ので、まずはphp.iniでmemory_limitsを増やしてみて、php-fpmの設定も変更してみました。
目次
php-fpmの設定
ちなみにEC2はt2.microですのでメモリは1GiBです。
/etc/php-fpm.d/www.conf
|
1 2 3 4 5 6 7 |
pm = dynamic pm.max_children = 10 pm.start_servers = 4 pm.min_spare_servers = 2 pm.max_spare_servers = 6 pm.max_requests = 500 |
サービス再起動
|
1 2 3 |
$ sudo service php-fpm restart $ sudo service nginx restart |
で、今後緩和されたかどうかをチェックする必要はあるので、CloudWatchからフィルター、アラームを設定してみました。
CloudWatchの設定
該当のログ(php-fpmのwww-error.log)を選択して[メトリクスフィルタの作成]をクリックします。
フィルタパターンを「Out of memory」にしました。
[メトリクスの割り当て]をクリックします。
フィルタの名前、メトリクス名に任意の値を入力して[フィルタの作成]をクリックします。
メトリクスフィルタが出来たのでそのまま[アラームの作成]からアラームを作成します。
名前に任意の値を設定します。
このフィルタが1回でも発生(ログにOut of memoryが一回でも出力)したらメールを送信するようにして作成しました。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
ヤマムギvol.27 Amazon Route 53プライベートホストゾーンとリゾルバーのデモをしました
今日は『AWS認定資格試験テキスト&問題集AWS認定ソリューションアーキ …
-
-
Amazon Linux2(EC2)にEC-CUBE 4をインストール
こちらのHOMEお知らせ・コラムAmazon Linux2にEC-CUBE4.0 …
-
-
Amazon Location Service入門ワークショップ-トラッカー
トラッカーでデバイスの位置や移動履歴を追跡できます。 関連記事 Amazon L …
-
-
IAMアクセス許可の境界でIAMロールの権限を制御する
IAMユーザー自身の権限はIAMポリシーで制御できますが、IAMユーザーにIAM …
-
-
EC2 Image BuilderでRocket.ChatのAMIを作って起動テンプレートを更新しました
EC2 Image Builderの練習をしようと思い、Rocket.Chatの …
-
-
AWS IAMのMFA「エンティティは既に存在しています」に対応しました
エンティティは既に存在しています MFA Device entity at th …
-
-
AWS CLIを使用せずにCodeCommitへhttpsで接続する
AWS CLIやアクセスキーID、シークレットアクセスキーなどを開発環境にセット …
-
-
RDSインスタンスのストレージをgp2からgp3に変更しました
2022/11/9にRDSでgp3ボリュームが使用できるようになりました。 Am …
-
-
AWS Lambda(Python)で生成した文字をAmazon Connectで音声を設定して発信する
Amazon Connectから発信する電話の音声を動的に設定します。 Lamb …
-
-
CodeGuru ProfilerでLambda関数(Python 3.9)のパフォーマンスを確認した
CodeGuru ProfilerでPython 3.9のLambda関数の推奨 …






