PlatformStatusAlertEvent
たとえば、ユーザーの要求の処理中に数式が評価されるとします。無効な数式の評価でエラーが発生すると、ユーザーの要求の処理中にプラットフォームイベントメッセージが生成されることがあります。
サポートされているコール
describeSObjects()
サポートされているサブスクライバー
| サブスクライバー | サポートされているかどうか。 |
|---|---|
| Apex トリガー | ![]() |
| フロー | ![]() |
| プロセス | ![]() |
| Pub/Sub API | ![]() |
| ストリーミング API (CometD) | ![]() |
登録チャネル
/event/PlatformStatusAlertEvent
特別なアクセスルール
このオブジェクトにアクセスするには、「アプリケーションのカスタマイズ」、「すべてのデータの編集」、または「Next Best Action 戦略を管理」ユーザー権限が必要です。
イベント配信割り当ての適用
はい
項目
| 項目 | 詳細 |
|---|---|
| ApiErrorCode |
|
| ComponentName |
|
| EventDate |
|
| EventIdentifier |
|
| EventUuid |
|
| ExtendErrorCode |
|
| RelatedEventIdentifier |
|
| ReplayId |
|
| RequestId |
|
| ServiceJobId |
|
| ServiceName |
|
| StatusType |
|
| SubComponentName |
|
| Subject |
|
| UserId |
|
| Username |
|
使用方法
次の例は、プラットフォーム状況アラートイベントを処理する方法を示しています。内部サービスのみがこのイベントを公開できます。これは、プラットフォームイベントメッセージが公開されたときに起動され、管理プロファイルでイベントの詳細を含む Chatter 投稿を作成する Apex トリガーの例です。
1trigger PlatformStatusAlertEventTrigger on PlatformStatusAlertEvent (after insert) {
2 List<Feeditem> posts = new List<Feeditem>();
3 Id profileId = [select Id from User where User.Profile.Name = 'System Administrator' limit 1].Id;
4
5 for(PlatformStatusAlertEvent e : trigger.new) {
6 Feeditem post = New Feeditem();
7 post.ParentId= profileId;
8 post.Body = 'Alert occured in the service: ' + e.ServiceName + '\n' +
9 'APIErrorCode: ' + e.APIErrorCode + '\n' +
10 'ComponentName: ' + e.ComponentName + '\n' +
11 'EventDate: ' + e.EventDate + '\n'+
12 'EventIdentifier: ' + e.EventIdentifier + '\n' +
13 'ExtendedErrorCode: '+ e.ExtendedErrorCode + '\n' +
14 'RelatedEventIdentifier: ' + e.RelatedEventIdentifier + '\n' +
15 'ReplayId: ' + e.ReplayId + '\n' +
16 'RequestId: ' + e.RequestId + '\n' +
17 'ServiceJobId: ' + e.ServiceJobId + '\n' +
18 'ServiceName: ' + e.ServiceName + '\n'+
19 'StatusType: ' + e.StatusType + '\n' +
20 'SubComponentName: ' + e.SubComponentName + '\n' +
21 'Subject: '+ e.Subject + '\n' +
22 'UserId: ' + e.UserId + '\n' +
23 'Username: ' + e.Username + '\n';
24 posts.add(post);
25 }
26 if (posts.size() > 0) {
27 insert(posts);
28 }
29}例
このコード例は、最終的に次を含む Chatter 投稿として表示されます。
Alert occurred in the service: Next Best Action Strategy
APIErrorCode: INVALID_OPERATION
ComponentName: Strategy_for_error_event_demo
EventDate: 2018-12-18 21:59:48
EventIdentifier: null
ExtendedErrorCode: FORMULA_EXPRESSION_INVALID
RelatedEventIdentifier: null
ReplayId: 63
RequestId: TID:89715900005e40b69a
ServiceJobId: 1014fd4e-4a19-4910-be36-377a7f2f1b75
ServiceName: Next Best Action Strategy
StatusType: Error
SubComponentName: filter_node1
Subject: Something went wrong with filter element 'filter_node1': 'Unknown function ISBLANC.Check spelling.'
UserId: 005RM000001ZnzAYAS
Username: xxx@yyy.com
