プラグインを 入れたり/出したりしてたら 面倒なことになった話 2014/08/30 WordFes Nagoya 2014
自己紹介 
もやし工房 
石黒光茂 
@koike_moyashi 
mitsushige.ishiguro 
もやし工房
前兆?
無料サーバー監視/ネットワーク監視サービスシーマン 
http://www.cman.jp/network/
無料サーバー監視/ネットワーク監視サービスシーマン 
http://www.cman.jp/network/
とある夜…
とある夜… 
こちらは独自のスクリプト
とある夜…
とある夜…
$ sudo tail /var/log/hogehoge 
別に変なところ無いよ 
$ sudo tail /var/log/httpd/error_log 
別に変なところ無いよ 翌朝
CPU使用率
CPU使用率
$ ls /etc/cron.hourly/ 
なんにも無いよ 
$ 
$ crontab –l 
no crontab 
$
データベースのI/O 
データが無くなってたのでイメージです
slow_query_log=ON (my.cnf) 処理が遅いクエリが 記録されるログ ※設定しないと出ません
$ sudo tail /var/log/mysql/slow.log 
# Time: 120729 4:12:19 
# User@Host: mysql_hoge[mysql_hoge] @ localhost [] 
# Query_time: 4.962076 Lock_time: 0.003103 Rows_sent: 0 Rows_examined: 1 
use wordpress; 
SET timestamp=1343502739; 
UPDATE `hoge_2_options` SET `option_value` = 'a:469:{i:1343477047;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477054;a:1:{s:17:¥"clean_cache_event¥";a: 1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477055;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s: 8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477070;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477074;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a: 3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477086;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8: ¥"interval¥";i:3600;}}}i:1343477088;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477090;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"
'a:469:{i:1343477047;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477054;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477055;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4: ¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477070;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477074;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477086;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8: ¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477088;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i: 1343477090;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥" hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477091;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477094;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥" ;a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477119;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477120;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥"; i:3600;}}}i:1343477143;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477147;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477149;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477168;a:1:{s:17:¥"clean_cache_event¥"¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477168;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477171;a:1:{s:17:¥"clean_ cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥
'¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477168;a:1:{s:17:¥"clean_cache_event¥"a:469:{i:1343477047;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477054;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477055;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477070;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477074;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥" interval¥";i:3600;}}}i:1343477086;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477088;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i: 1343477090;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥" hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477091;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477094;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥" ;a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477119;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477120;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥"; i:3600;}}}i:1343477143;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477147;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477149;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477168;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477171;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"
'a:469:{i:1343477047;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477054;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477055;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4: ¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477070;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477074;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477086;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8: ¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477088;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i: 1343477090;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥" hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477091;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477094;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥" ;a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477119;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477120;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥"; i:3600;}}}i:1343477143;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477147;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477149;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477168;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477171;a:1:{s:17:¥"clean_cache_event¥";a:1:{s:32:¥"40cd750bba9870f18aada2478b24840a¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥ ¥";a:3:{s:8:¥"schedule¥";s:6:¥"hourly¥";s:4:¥"args¥";a:0:{}s:8:¥"interval¥";i:3600;}}}i:1343477168;a:1:{s:17:¥"clean_cache_event ずっと つづいてる
$ sudo tail /var/log/mysql/slow.log 
# Time: 120729 4:12:19 
# User@Host: mysql_hoge[mysql_hoge] @ localhost [] 
# Query_time: 4.962076 Lock_time: 0.003103 Rows_sent: 0 Rows_examined: 1 
use wordpress; 
SET timestamp=1343502739; 
UPDATE `hoge_2_options` SET `option_value` = 'a:469:{i:1343477047;a:1:{s:17:¥"clean_cache_event¥";a:1:{ s:32:¥"40cd750bba9870f18aada2478b24840a¥";
Wordpresscron 助けてください
ずっと つづいてる
cron 
データベース 登録
cron 
データベース 
プラグインA 
wp_schedule_event 
1.スケジュール登録 登録
cron 
データベース 
プラグインA 
wp_schedule_event 
1.スケジュール登録 
プラグインB 
wp_schedule_event 
スケジュール登録 登録
cron 
データベース 
プラグインA 
wp_schedule_event 
1.スケジュール登録 
wp_cron.php 
2.いい感じに実行 
プラグインB 
wp_schedule_event 
スケジュール登録 登録
cron 
データベース 削除
cron 
データベース 
プラグインA 
wp_unschedule_event 
スケジュール削除 削除
もと $ wp plugin list --status=active べつ $ wp plugin install hoge –activatewp-cli※黒い画面
自己責任でね♪
結果(CPU使用率)
結果(データベースファイルI/O)
結果(Webmaster tools→クロール→クロールエラー)
まとめ •WP-Cron Dashboard•google webmaster toolsの クロールエラー レンタルサーバーの方でも…
まとめ •性能監視(cacti,munin) •MySQLのログ(slow_query_log) •ログのグラフ化(Fluentd + GrowthForecast) VPSやAWSを使ってる方
ご静聴ありがとうございました

プラグインを 入れたり/出したりしてたら 面倒なことになった話 | WordFes Nagoya 2014 LT