SpeedData

Salesforce

Salesforceアプリケーションのパフォーマンス監視

2022年3月31日
翻訳: 島田 麻里子

この記事は米Catchpoint Systems社のブログ記事 Salesforce Application Performance Monitoringの翻訳です。
Spelldataは、Catchpointの日本代理店です。
この記事は、Catchpoint Systemsの許可を得て、翻訳しています。


見込み客や顧客に関連する全ての活動をスプレッドシートで記録しようとすることを想像できますか?
昔でいうところのローロデックスはどうでしょうか?(皆さんまだ覚えているでしょうか!)
セールス、マーケティング、カスタマーケア、そして一般的な顧客との関わり方に革命をもたらした顧客関係管理(CRM)ソリューションであるSalesforceに感謝します。

Salesforceは、多くの企業にとって重要なコンポーネントです。
ダウンタイムが発生すると、顧客獲得、リードジェネレーション、顧客サービスおよび顧客維持に影響を与える可能性があります。
そのため、クラウドアプリケーションを監視し、問題があればすぐに検知して対処できるようにすることが重要です。

包括的な監視プログラムを導入した企業には、様々なメリットがあります。
ダウンタイムの軽減に加え、IT部門はパフォーマンス問題の原因がローカルのリソースにあるのか、それともSalesforceの問題なのかを特定することができます。
この情報があれば、ITスタッフは社内のインフラをアップグレードしたり、フェイルオーバーサービスを利用したり社員に通知したりして、ダウンタイムを軽減することができます。

salesforceを利用する

今「Salesforceを監視してください!」と言うのは一つの方法ですが、そのやり方についてはたくさんあります。
ここでは、企業が取るべき様々な監視戦略と、Salesforceの稼働を維持するための最適な方法について説明します。

アクティブ監視とパッシブ監視

パフォーマンス監視には様々な方法がありますが、大きく分けるとアクティブ手法とパッシブ手法の2つがあります。
どちらを選ぶかはビジネスのユースケースによりますが、一般的に企業では、Salesforceなどの重要なアプリケーションには両方を使用します。
それはなぜか?アクティブとパッシブの監視技術を組み合わせることで、SaaSアプリケーションのネットワークパフォーマンスと可用性に関する貴重な洞察を得ることができるのです。

アクティブ監視

アクティブ監視は、スクリプト、プラグイン、サードパーティソフトウェアを使用して、実際のユーザと同様の動作を生成します。
これにより、ユーザが経験する可能性のあるパフォーマンスエラーを把握することができます。
実際、ユーザの行動をテストとしてスクリプト化することで、ユーザが経験する前に問題を特定することができます。

アクティブ監視は、通常、間隔を空けて「舞台裏」で行われるため、テストが日常の生産性を妨げることはありません。
Salesforceのアクティブな監視では、監視ソフトウェアがSalesforceにユーザのような呼び出しを行い、リクエストに応答しているかどうかを判断する場合があります。
そうすることで、コードのエラーやSalesforceアプリケーションの問題を特定することができます。

また、Salesforceは、企業組織が多くの機能を自動化し、ローカルストレージとクラウドアプリケーションの間でデータを同期させるために使用するAPIを備えています。
アクティブ監視を利用すると、独自のGETおよびPOSTリクエストを作成して、APIが期待どおりに機能し、Salesforceにダウンタイムや内部障害が発生していないことを示す結果が返されることを常に確認することができます。

パッシブ監視

アクティブ監視は多くのことに役立ちますが、完全な分析を行い、ユーザがアプリケーションでどのように作業するかを理解するには、より多くのデータが必要であることを心に留めておいてください。
パッシブ監視は、バックグラウンドでユーザデータを収集し、その後レポートや分析を実行し、パフォーマンスを決定するために使用されます。

パッシブ監視は、一般に、管理者が帯域幅、アプライアンス、またはユーザ・デバイスを追加導入して高トラフィック負荷に対応できるよう、パフォーマンスの問題を判断するために使用されます。
例えば、パッシブ監視を使用して、営業チームのネットワーク・セグメントのネットワーク・トラフィック・データを収集し、ローカル・ネットワークにおけるパフォーマンスの問題やリソースの枯渇を特定することができます。

どちらの監視方法が必要なのか

多くの企業組織がパッシブおよびアクティブな監視戦略を導入していますが、Salesforceの監視にはアクティブ監視が欠かせません。
アクティブ監視では、ユーザのブラウザにインストールされたプラグインがユーザに代わってデータを収集し、パフォーマンスやアクセスに関する問題を判断するアクションを実行することができます。

また、アクティブ監視は実際の状況をエミュレートするので、ユーザが遭遇するのと同じ方法で問題を特定することができます。
その他、ユーザが問題を体験する前に警告を発し、ユーザの活動に影響を与える前にバグを緩和・修正する時間を確保することができます。
言い換えれば、アクティブ監視はアプリケーションの予測的な分析を行うので、管理者や開発者は積極的に問題を改善することができるのです。

とはいえ、「どちらか一方」というわけではなく、パッシブ監視も有効です。
パッシブ監視はデータ収集に適しており、ネットワークやローカルデバイスのリソースをそれほど必要としません。
Salesforceへの接続に使用されるリソースを特定したい場合や、マルウェアがネットワークリソースに悪意を持ってアクセスしているかどうかを判断したい場合、パッシブ監視によってこの情報を得ることができます。

カスタマーサポートからオペレーションまで、オートデスクのビジネスの多くの部分は、重要な機能をSalesforce.comのようなSaaSアプリケーションに依存しています。
CatchpointのSaaS監視とアラートは、ITチームが我々のビジネスラインを稼働させ続けるのに役立っています。
―オートデスク社 アプリケーション監視エンジニア マイラ・ザラテ氏

Salesforceを監視するための戦略

Salesforceの監視戦略を強化するためには、いくつかのステップを踏んで進めていきます。
特定したい問題に応じて、一連のテストでSalesforceを監視できます。

アプリケーションを監視する最も効果的かつ徹底的な方法は、HTTPアクションを実行するスクリプトを使用することです。
例えば、スクリプトはSalesforceアプリケーションにレコードを問い合わせることができます。
レコードデータが返されれば、アプリケーションがアクティブであることが分かります。

より単純なHTTPリクエストの場合、スクリプトはWebサイトのサーバにレスポンスを問い合わせることができます。
HTML文書とともに200 OKレスポンスが返ってくれば、アプリケーションサーバは機能していると考えてよいでしょう。

Salesforce APIで動作するカスタムコードを実行する場合、もう1つの方法は、APIエンドポイントにGETおよびPOSTリクエストを送信することです。
エンドポイントは、リクエストが成功したかどうかを示すデータを返します。
このデータから、エンドポイントが正常に動作しているかどうかを知ることができます。

APIエンドポイントに送信されたデータが誤った構文を使用しているか、無効である場合、Salesforceはエラーを返します。
この情報は、自社のアプリケーションのバグを特定するために利用することができます。

HTTPおよびAPIエンドポイントリクエストは、稼働時間やシステムエラーに有効ですが、パフォーマンスや単純な稼働時間の状態を検出するために他の方法を選択することができます。
以下では、Salesforceの稼働時間を監視するためのその他の方法をいくつか紹介します。

DNSチェック

DNSに障害が発生した場合、HTTP/Sリクエストは全て失敗します。
DNSの障害はホストから発生する場合もあれば、ローカルネットワークがインターネットサービスプロバイダのDNSサーバに到達できない場合もあります。
DNSサーバまたはSalesforceレコードを取得できない場合、IPアドレスではなくフレンドリーなWebホスト名を使用するブラウザーやその他のアプリケーションは、失敗します。

Pingテスト

Pingツールは、ネットワーク管理者が遠隔地のサーバやコンピュータが稼働しているかどうか、ネットワーク要求に応答しているかどうかを確認するために使用します。
また、Webサイトのサーバが稼働し、リクエストに応答しているかどうかを判断するためにも使用されます。
Pingツールを使用して、メインアプリケーションまたはAPIをホストするSalesforce Webサーバがリクエストに応答しているかどうかを確認できます。

Pingテストは、特に複数の場所にオフィスがある場合、基本的な稼働時間の監視に有効です。
これらの情報は、Salesforceへのアクセスが特定の地域で制限されているのか、それとももっと一般的な問題なのかを判断するために役立ちます。
例えば、ある地域でインターネットサービスプロバイダに障害が発生した場合、ある場所のオフィスには深刻なダウンタイムが発生しますが、他の国のオフィスでは問題にならないかもしれません。

従業員の端末チェック

ネットワークやSalesforceのサーバだけが問題ではない可能性があります。
アプリケーションのパフォーマンスが低下している原因は、従業員の端末にあるかもしれません。
デバイスは、マルウェアにCPUやメモリリソースを乗っ取られたり、ブラウザベースのソフトウェアを実行するために追加のハードウェアが必要になったりする可能性があります。

リソースを乗っ取るマルウェアは、Salesforceのダウンタイムよりも深刻な問題である恐れがあり、その特定と阻止が必要です。
デバイスは、クリプトジャックに利用されたり、ネットワーク上でランサムウェアを配布する媒介となる可能性があります。
監視装置は、管理者が特定の装置のダウンタイムがネットワークリソースではなく、ローカルマシンに起因するものであるかどうかを特定するのに役立ちます。

まとめ

Salesforceは、営業、カスタマーケア、マーケティングにおいてたびたび重要な要素となります。
これらは、コントロールが効かなくなるのが困るビジネス領域です。

Salesforceの監視は、問題を早期に発見してそれを軽減し、ダウンタイム発生時のコールセンターのチケット数を削減する有益な方法です。
また、パフォーマンスの問題に対して先を見越して対応し、IT部門がネットワーク全体の改善の機会を特定するのに役立ちます。

実際、テクノロジー環境全般を監視し、通常なら気付かないような異常を発見することは重要です。
悪いことが起きたときに、気付かないままでいたいと思う人はいないでしょう。
問題をできるだけ早くキャッチすることは、企業にもお客様にもメリットのあるビジネス慣習です。

Salesforceのパフォーマンス監視のeBookはこちらからダウンロードできます。