はじめに
先週乱雲動天アップグレードが公開されました。毎度の事で仕方ないのですが、バグがいくつかあった様でそれらの修正?または負荷?その他の障害?でメンテナンスとサーバ停止が発生しました。私もリアルでソフトウェアを提供してる身なのでアップデート後のサポートにはいつもヒヤヒヤしてます。運営側の現場の皆様の気苦労はとても大変な物だと思っています。お疲れ様でございます。そしてありがとうございます🙇🏻
今回のサーバ停止は久しぶりに長く、Xではまだ回復がしないのか?とまだか?まだか?の状態。実は私もサーバの回復を待ち望み何度も公式ページを見に行ってました。
障害情報は掲載されていませんが、プレイヤーの希望は公式Xの復活を望んでいます。人数が少なくなって来たかも?と言う状態ですがX(Twitter)やFaceBookの更新情報はとても大切。更新情報を一つだけでも出せばフォロワーにいる引退者さんにも声が届くのではないかなぁ〜と思う所。不安です!
そこで閃いたのが信オンのサーバ監視プログラム。本家のワールド情報を見に行けば早いのですが、いつ復旧したのかは?Xでは誰かの鶴の一声待ちが現場でして😵💫
そこでワールド情報を監視しステータスが変更になった場合通知させよう(メール、もしくはXなどで)と言う事で調べ開発をスタートしました。
追記・更新情報
- 10/9 参考にしたサイトを掲載しました
- 7/10 当ページパスワード保護をしてましたが、公開にしました
ワールド情報のページについて
ホームページのワールドステータス内のワールド情報には通常とサーバ停止中の2つの文字のステータス表示かと思われるのですが実は裏では他のステータス表示も存在してます。それは以下の表示で計5種類です。
- 通常
- やや混雑
- 混雑
- サービス停止中
- 不明
昔は、やや混雑や混雑が表示されていた時代もありますが、今では通常とサービス停止中以外のステータスはなかなか表示されるケースがありませんので今回はこの2つのステータスを監視するプログラムを作ってみます。
プログラムの概要
ウェブスクレイピングと言う技術を利用しています。目的のWEBサーバのデータを保持し、Cron(定期プログラム実行)で定期的に見に行く様に設定。前回取得したデータと現在表示れているデータの内容に差異があった場合アラートを出す仕組みです。プログラム言語はPHPで開発をしています。
通知方法
メール通知
メールが通知される様になりました。余談ですが、メーリングリストで皆さんと通知を共有していくか?は検討していきたいと思っています。
仮のワールド情報を監視させて
Gmailに送信できた
X(Twitter)通知
なかなか、Xの方にも反映ができなかったのですが何とかメールからXへパイプを通して公開する事ができました🤗Twitter DeveloperのAPI関連で躓いていたのだと思います。
課題
WEBサーバ側のワールド情報と実際のログインサーバの表示には数分のラグも見つかり。その対策の為にパケットキャプチャを用いて信オン自体のサーバのアドレスを監視しようかと思ったのですが、不正アクセスと見なされ私のアカウントのBANも考えられる事から今回はWEBサーバの監視と言う方向でプログラムを作り公開をしました。
ゲームを立ち上げた時のPCのネットワーク通信をリアルタイムで表示し、ログとして保管。閲覧する事できます(悪用厳禁)
また、水曜日のメンテナンスではワールドステータスを表示しているWEBサーバ側もメンテナンスする事がある為、ウェブサーバ側がメンテナンスをしている際はアラートを警告させないプログラムに書き直しています。
目指すところ
寄合所の様にプレイヤーの有志による新着配信アカウントができたら良いなーとも思ってます。こっそり新着ページのチェックも搭載できるか?チャレンジ中です。
こつこつテストしながら作っていくので、開発の経過や実装の結果を追記していきます。信オンで皆さんと楽しめる時間が増えればとても素晴らしい事だと思ってます😋
よろしくお願いいたします。
メンテなのに通知されないなぁ〜と思ったらサーバーステータスのページが更新されてなかった〜
WEBの方も不具合出るんですねぇ