GNU/Linux >> Linux の 問題 >  >> Linux

'Upptime'ツールとGitHubを使用してWebサイトの稼働時間モニターを作成する[サーバーは不要]

サーバーやWebサイトを管理している場合は、Webサイトがダウンしているかどうかを時間内に知ることがいかに重要であるかを知っています。ダウンタイムが自分やクライアントのビジネスやサービスに影響を与えたくないですか?

ダウンタイムについてWebサイトを監視する方法があります。稼働時間監視ツールを使用してサーバーを構成するか、Better Uptimeなどの稼働時間監視サービスを選択できます(無料枠もかなり充実しています)。

最近、稼働時間モニターをセットアップするさらに簡単で痛みのない方法に出くわしました。 Upptimeと呼ばれるこの素晴らしいオープンソースプロジェクトでは、GitHubを使用して独自の稼働時間モニターを無料で簡単にセットアップできます。

最良の部分は、サーバーにエージェントやツールをインストールしないことです。完全にGitHubのツールを使用して処理されます。

稼働時間:GitHubを使用してウェブサイトの稼働時間を監視します

Upptimeで得られるものは次のとおりです:

  • GitHub Actionsを使用して、5分ごとに任意のWebサイト(自分または他の人のWebサイト)を監視します。また、応答時間の統計も保存されます。
  • 電子メール、Slack、Telegram、カスタムWebhookを介して送信されるようにダウンタイム通知を構成できます。このようにして、Webサイトがダウンしたときを簡単に見つけることができます。
  • オプションで、ステータスページを設定し、URLをチームメンバーまたはクライアントと共有して、稼働時間の統計と停止履歴を視覚化することもできます。
  • サーバーが200以外の応答コードを返す場合、静的フロントエンドで目立つ問題とともに、問題がリポジトリに自動的に生成されます。

いいですね。 Upptimeを設定する手順を紹介します。

ダウンタイム監視用のUpptimeの構成

Upptimeの設定には最小限の技術的知識が必要であり、完全に無料です。必要なのはGitHubアカウントだけです。

ステップ1.同一のUpptimeリポジトリを作成します

同一とは、同じファイルとディレクトリ構造を持つことを意味します。公式リポジトリをフォークする必要があると思うかもしれませんが、そうではありません。 Upptimeの公式リポジトリはテンプレートリポジトリです。

テンプレートリポジトリは特殊なタイプのリポジトリであり、他の人がそこから同様のリポジトリ(同じファイル、同じディレクトリ構造)を作成できるようにします。テンプレートリポジトリとフォークの主な違いの1つは、リポジトリをフォークすると、以前のすべてのコミットがこのフォークされたリポジトリの一部になり、プロジェクトに貢献するのに適していることです。一方、テンプレートリポジトリを使用すると、同じファイルとディレクトリを使用して新しいプロジェクトを開始できます。

UpptimeのGitHubリポジトリにアクセスしてください。右上に、[このテンプレートを使用する]というタイトルの緑色のボタンが表示されます。クリックして。

ここで、この新しいリポジトリに適切な名前を付けます。私の名前を「素晴らしい稼働時間」にします。

「テンプレートからリポジトリを作成」の上に「すべてのブランチを含める」というラベルの付いたチェックボックスがあります。必ずチェックしてください。そうしないと、統計情報を表示する静的WebサイトにGitHubPagesを使用できなくなります。

ステップ2.構成

公開する前に、構成が必要なことがいくつかあります。インターネットに面したフロントエンドが必要ない場合は、これらの一部は必要ない場合があります。これは理解できることです。

私。 GH_PATを追加

デフォルトでは、Upptimeは、指定されたWebサイトが稼働しているかどうかを5分ごとにチェックします。結果に応じて、問題が発生するか(サイトがダウンしている場合)、ステータスや応答時間などの関連情報がコミットされます。

>

そのためには、このリポジトリにアクセスする必要があります。したがって、個人用アクセストークンを提供することにより、アクセスを提供します。

アカウント設定に移動します:

そして、左側のサイドバーから「開発者設定」をクリックします。

ここでも左側のサイドバーに、[個人アクセストークン]オプションが表示されているはずです。それをクリックします。 「新しいトークンを生成する」オプションが表示されますか?ヒットしてください。

このリストから、「リポジトリ」を選択します "と"ワークフロー "。これらの特定の権限の説明を読んで、これらを選択する必要がある理由を理解してください。

このトークンに名前を付け、最後に「トークンの生成」をクリックします。キーが表示されたら、それをコピーします。 これを再度表示することはできません。安全な場所に保存するか、後で必要になった場合は新しいものを作成してください。

次に、このトークンをリポジトリシークレットとして追加する必要があります。

GitHubシークレットは、さまざまなGitHubアクションワークフローで使用できる暗号化された環境変数です。簡単に言うと、これらの環境変数は、GitHubアクションで実行されているプロセスで利用できます。

Upptimeリポジトリの設定のバージョンに移動します。

左側のサイドバーで[シークレット]を選択し、[新しいリポジトリシークレット]ボタンをクリックします。

ここに名前としてGH_PATと入力します 値フィールドにトークンを貼り付けます。最後に、[シークレットを追加]ボタンをクリックします。

最後に次のような画面が表示されます:

II。 .upptimerc.ymlを更新

メイン構成ファイルはプロジェクトのルート(マスター/メインブランチ)にあり、 .upptimerc.ymlという名前です。 。次に、これを編集します。

  • ownerの値を変更します GitHubのユーザー名に。
  • repoの値を変更します リポジトリ名に。上記のオプションは、Upptimeがコミットをプッシュして問題を開くことができるようにするために必要です。
  • カスタムドメインがある場合は、それを cnameに追加します 変数。そうでない場合は、私のように、行を完全に削除します。
  • カスタムドメインがない場合は、 baseUrlのコメントを解除します 行を入力し、値をGitHubリポジトリ名に変更します。
  • サイトを変更する 必要に応じて配列します。 https://itsfoss.com、https://linuxhandbook.com、https://news.itsfoss.comを監視するように変更しました。

オプションで、GitHubシークレットを使用してサイトを非公開にすることもできます 。完成させるために、自分で1つ追加します。

  • リポジトリ設定を開き、 secretsに移動します 。
  • ここに新しいシークレットを追加し、任意の名前を付けます。値には、シークレットで監視するドメインを使用します。
  • シークレットの追加をクリックします 。

シークレットの作成が完了したら、 .upptimerc.ymlを編集します もう一度ファイルして新しいサイトを追加し、名前を付けます。URL値には、 $ YOUR_SECRET_NAMEを使用します。 。

ファイルを保存し、マスター/メインにプッシュします。

.upptimerc.yml には、他にも多くの構成可能なパラメーターがあります。 、詳細については、この記事を参照してください。

ステップ3.ページを公開します[オプション]

フロントエンドを表示するステータスが必要な場合は、このセクションが最適です。

リポジトリ設定に移動します。 オプションについて 構成可能なオプションのリストで、 GitHub Pagesというタイトルのセクションを見つけます 。

ブランチから ドロップダウンメニューで、 gh-pagesという名前のブランチを選択します rootを選択します Webルートディレクトリ用。 保存をクリックします 。

最後に、アクションが完了するまでしばらく待ちます。 アクションで進行状況を確認できます リポジトリページにあるメニュー。

私の場合、必要な設定はすでに行われているため、メールの受信トレイでアクションの通知が失敗することがありました。同様の状況が見られる場合は、無視してください。この手順の前にすべてが正しく完了すると、そのような通知の受信を停止します。

それはあなたを動かすはずです。通知設定などの構成の変更については、Upptimeのドキュメントを参照してください。

この記事がお役に立てば幸いです。ご不明な点がございましたら、下にコメントするか、Twitter@debdutdebまでご連絡ください。


Linux
  1. PrometheusとGrafanaでLinuxサーバーを監視する

  2. BIND DNSサーバーログを有効にしてクエリを監視し、トラブルシューティングを行うにはどうすればよいですか?

  3. Muninでサーバーを監視する

  1. LinuxMint17でownCloud6を使用してクラウドストレージを作成します

  2. PHPスクリプトとLinuxコマンドラインを使用してWebサイト(html)のスクリーンショットを作成する方法

  3. Deepinシステムモニター–DeepinOS用のスタイリッシュなシステムモニターツール

  1. pdftkでPDFのブックマークを作成する

  2. クラウドサーバーのRAMを理解する

  3. Linux サーバーに CVS をインストールして CVS リポジトリを作成する方法