BLOG
HOW-TO:Twitterトレンド・アラート・システムの作り方

投稿:2018年5月17日   |    更新:2022年10月13日

こんにちは!私はリチャード・チャオ、PagerDutyのプラットフォームチームのソフトウェアエンジニアリング部門でインターンをしています。私はワーテルロー大学でコンピューター工学を学ぶ2年生でもあります。この記事では、2018年のMarch Hackdayプロジェクトを紹介します。最小限のコーディング知識でTwitterトレンドのアラート・システムを40分以内で作成できるガイドです。

PagerDutyを活用してTwitterで自分のブランドを監視するシステムを作る―しかも40分以内で

ソーシャルメディアの時代、ブランドの評判の管理より複雑なことはありません。公開企業の66.7%がTwitterでメンションする中、あなたは適切なタイミング、例えば顧客が最もよく見ている時間に興味深く影響力のあるコンテンツを宣伝したいとします。それと同時に、主要なPR活動を監視して迅速にチームを動員できるように準備させておき、ブランドが顧客と収益を失わないようにしたいとします。そのために必要とされるものは競争力です。それは、チャンスなのかトラブルなのかに関係なく、ソーシャルメディアで何かが起こったらすぐにそのトレンドのトップに立つことを意味します。

導入事例

今日は、ほとんどの人はToronto Raptors(訳注:カナダ・オンタリオ州トロントに本拠を置く全米プロバスケットボール協会所属のチーム)について話しているようです。おそらく、これはぼくらのジャージの5割引セールを宣伝するのにベストなタイミングでしょう。

step1_twitter_alert-1024x538

PagerDutyソリューション

ほとんどの企業はPagerDutyを使い、顧客に影響を与える不具合の管理や、適切な対応者へのアラート送信、インシデントが従業員と顧客満足度に及ぼす影響の分析などを行っています。

しかし、PagerDutyをTwitterのトレンド・アラート・システムとして活用できることも知っているのでしょうか?

PagerDutyの良いところは、ニーズに合わせて簡単に拡張できることです。このガイドの最後まで行けば、Twitterのキーワード、メンション、リツイートをリアルタイムで追跡し、ソーシャルメディアの活動が急増したときにeメール、SMS、または電話で即座にアラートする自動化されたアプリケーションができ上がっています。一番おいしい点は、これにかかる時間は40分以下で、コーディングに関する知識もほとんど必要ないことです。では、早速作業に入りましょう。

ステップ… 別名 “Engineering Stuff”

ステップ1:Twitterアプリケーションを設定します。

  1. 新しいTwitterアカウントの作成
    • このプロジェクトにはあなたの会社のTwitterアカウントを使用する必要はないので 、セキュリティとテストのため新しいTwitterアカウントを作成することをお勧めします。
  2. Twitter APIキーの取得
    • メールを確認してください。
    • Twitter APIを使用するには、Twitterがアプリケーションをあなたのアカウントに関連付けるためのトークンが必要です。https://apps.twitter.com/にアクセスして新しいアプリを作成します。
    • Keys and Access Tokensタブの下で、トークンを生成します。後でキーをコピーできるように、このタブを開いたままにしておきます。

3_twrblog_application-settings

あなたのTwitterアカウントを開発用に設定する必要があります。

ステップ2:プロジェクトコードをダウンロードします。

PagerDutyはGitHubを使用してコードリポジトリの管理をします。

  1. プロジェクトコードをダウンロードするため、Gitがインストールされていることを確認してください。
  2. https://github.com/pagerduty/twitter-trend-alert-system にアクセスしてください。ターミナル/CMDで、”git clone https://github.com/pagerduty/twitter-trend-alert-system ”を実行してプロジェクトコードをダウンロードします。
  3. このプロジェクトはPython 2.7.14を使用しています。インストールしていない場合は、https://www.python.org/downloads/にアクセスしてください。
  4. “pip -version”と入力してインストールを確認してください。 5_twrblog_pip-version-1024x170
  5. プロジェクトを設定するには、READMEに記載されている指示に従ってください。この時点ではDatadog APIキーが欠落しているはずです。

ヒント: このガイドでは、ローカルコンピュータでプロジェクトを実行します。これを無期限に実行したい場合は、小さなサーバーで実行することをお勧めします。

この作業が完了する前に、Twitterに投稿されたすべてのステータスをフィルタリングし、リストされたキーワードを含むステータスのみを返すプロセスがあります。

ステップ3:PagerDutyを設定します

あなたの会社が現在PagerDutyを使用していない場合は、https://signup.pagerduty.com/accounts/newにアクセスして無料の14日間の試用アカウントを作成する必要があります。

オンボーディングページはスキップできますが、通知を設定していることを確認してください:

6_twrblog_test-notification-908x1024

サービスを設定するまであと少しです。

  1. まず、エスカレーションポリシー(EP)を設定します。通常、EPは状況を適切な人にエスカレートさせ、誰かがインシデントに対応できるようにします。ここで詳しい情報を見つけることができます:https://support.pagerduty.com/docs/quick-start-guide#section-create-an-escalation-policy
    • ホームページから、Configuration → Escalation Policies → New Escalation Policy へ移動します。
    • EPの名前を作成します。 7_twrblog_twitter-alert-team
  2. 次にサービスを設定します。サービスは関連情報を裏付けるために設計されています。詳細については、https://support.pagerduty.com/docs/quick-start-guide#section-create-a-serviceをご覧ください。
    • Configuration → Services → Add New Service の順に選択します。
    • きちんとした名前をつけてください。
    • DatadogをIntegration Typeの欄に表示させてください。
    • How should responders be notified(レスポンダーにどのように通知するか)というフィールドは、状況によって異なります。あなたが話題のトレンドをモニターしたいならば緊急性の低いサービスをお勧めします。一方、重大な顧客サポートに関わるインシデントを監視したい場合は、緊急性の高いサービスをお勧めします。低緊急度サービスと高緊急度サービスの違いの詳細については、https://support.pagerduty.com/docs/service-settings#section-use-case-1-critical-and-non-critical-incidentsを参照してください。 8_twrblog_add-service_twrblog_datadog-1024x681

ヒント: なぜDatadog?

PagerDutyには連携する200以上のインテグレーションがあり、そのうちの1つがDatadogです。あなたのチームが他のツールを使用している場合でも、PagerDutyがそれとインテグレーションできる可能性は非常に高いです。また、インプルななREST APIを使用することもできます。

あるコンテンツがトレンドになっている時や、熱いソーシャルメディアの状況を管理する必要がある場合、適切な時に適切な人に通知するためのアラートサービスを提供しています。

ステップ4:Datadogホストを作成します。

  1. https://app.datadoghq.com/signupで新しい試用アカウントを作成します。
  2. 指示に従って、MacまたはWindowsコンピュータにDatadog Agentを設定します。Macではターミナルでコードスニペットを実行します。Windowsではインストーラーをダウンロードして使用します。 9_twrblog_installer-966x1024
  • https://app.datadoghq.com/account/settings#apiにアクセスし、APIキーをコピーします。そして設定ファイルに貼り付けます: 10_twrblog_api-keys-1024x302
  • このクイックガイドに従って、PagerDutyのDatadogとのインテグレーションを行ってください。すでにサービスを設定しているので、次のような画面が表示されます。 11_twrblog_datadog-integration
  • アプリを実行します。アプリケーションの起動方法については、README.mdを参照してください。最初のツィートが追跡された後、この指標はDatadogに存在するはずです。
  • Monitors→New Monitors の順に移動して、新しいメトリック・モニターを作成します。 12_twrblog_alert-threshold-1024x827
  • メトリックに_tweet_countを選択します。
  • システムが動作することを確認するために、低いアラート閾値(例では5)を設定します。例えば、 13_twrblog_detection-method-1024x446
  • 分かりやすいメッセージをタイトルに追加し、説明に@pagerdutyがタグ付けされていることを確認してください。次の図を参照してください。 14_twrblog_whats-happening-1024x319

Saveをクリックすると、数分間であなたの電話にアラートが表示されます。 これで完全なTwitter Trend Alert Systemを持っていることになりました。

ステップ5:ブラッシュアップ

順調に機能できたので、これからはアラートを解決しましょう。

  1. テスト設定からのアラートを避けるために、Datadogの閾値を上げましょう。Monitors→Manage Monitorsの順に移動します。メッセージタイトルのmonitorの上にマウスカーソルを置き、Editをクリックします。アラートの閾値を100,000などの大きな数値に変更します。 15_twrblog_monitors-1024x107
  2. PagerDutyでは、通話やテキストメッセージに返信することでアラートを解決できます。あるいは、Webサイトからインシデントを解決することもできます。 16_twrblog_incidents

次のステップ

あなたは今、完全に動作しているTwitter Trend Alert Systemを持っています。今こそ、ソーシャルメディアのトレンドを効果的に活用する時です。

PagerDutyがシステムの機能をどのように強化するかに興味がありますか?

弊社の製品を最大限に活用するための次のいいステップがあります:

  • エスカレーションポリシー :特定の広報インシデントには経営幹部の決定が必要です。連絡を取る時間を短縮し、エスカレーションポリシーを設定して通知を受けるようにします。
  • ステークホルダーユーザー:あなたの社内に重大な広報インシデントが起こったことを通知されたい人がいますか? 次は利害関係者のユーザーを設定することを検討してください。
  • 操作コマンドコンソール (OCC):大規模なインシデントの際にTwitterで顧客がどのように反応しているかを監視します。

本記事は米国PagerDuty社のサイトで公開されているブログをそのまま日本語に翻訳したものです。原文はこちらを参照してください。