Skip to main content

ログファイルの確認

Archived

2 タスク

15 分

Visible to: All users
中級 Pega Platform 8.6 Enterprise Application Development Performance 日本語
This content is now archived and is no longer updated. Progress is not calculated. Pega Cloud instances are disabled, and badges are no longer awarded. ここをクリックして to continue your progress in the latest version.

シナリオ

従業員の評価プロセスでは、新入社員としてのパフォーマンスを定期的に評価するための評価期間が設けられています。 従業員評価のケースタイプで評価期間のステータスをチェックするには、IsEvalPeriodEndedWhenルールで、入力された評価日が経過しているかどうかをチェックします。 ユーザーが入力した日付が評価期間内であれば、次の「Assess employee」のプロセスに移動します。 ユーザーが評価期間外の未来の日付を入力すると、「Assessment」ステップはスキップされ、「Review」ステージに移動します。

従業員の評価プロセスをスキップするためのWhen条件を評価する正しい構文は 「Invalid Evaluation End date + .Enddate,とする必要がありますが、デベロッパーはこのプロパティを「Emddate」とスペルミスしています。 実行時に、プロセスが期待した値を返さないことに気づきます。 この矛盾を見つけるために、ログを確認します。 

  • デベロッパーがEmddateという名前の新しいプロパティを作成したシナリオについて考える
  • 既存のWhen条件であるIsEvalPeriodEnded で、デベロッパーはEndDateEmddateとスペルミスしています。
  • Log-Messageメソッドを使用して、IsEvalPeriodEndedがtrueを返した場合のみ、PegaRULESログファイルにメッセージを書き込むアクティビティを作成します。
  • IdentifyAssessmentPeriod_0フローアクションの「Actions」タブの「Run activity」フィールドにこのアクティビティを追加します。
  • ケースを実行して生成されたログファイルを表示し、"Invalid Evaluation criteria End date"+ .Enddateというメッセージを表示する

以下の表は、チャレンジに必要なログイン情報をまとめたものです。

ロール ユーザー名 パスワード
シニアシステムアーキテクト SSA@TGB rules
補足: 練習環境では、複数のチャレンジの完了をサポートする場合があります。 その結果、チャレンジのウォークスルーに表示される設定は、お客様の環境と完全に一致しない場合があります。

チャレンジ ウォークスルー

詳細なタスク

1 スペルミスされたプロパティの導入

  1.  EmployeeEvaluationクラスに、DateタイプのプロパティEmddateを作成します。

    Emd date property

     

  2. 同じクラスで、IsEvalPeriodEndedという名前の既存のWhenルールを開き、Emddateを含む終了日を変更します。

    When

2 アクティビティを作成し、ログファイルにメッセージを追加

  1. EmployeeEvaluationクラスで、WriteToLogという名前のアクティビティレコードを作成します。

    ヒント: アクティビティレコードを作成するには、Application Explorerでクラス名を右クリックし、「Create」>「Technical」>「Activity」を選択します。
  2. アクティビティの最初のステップで、When条件の有効化を追加し、次の値を設定します:When IsEvalPeriodEndedtrueの場合はSkip Step、falseの場合はContinue Whens 。
    Method
     
  3. Methodフィールドで「Log-Message」と入力または選択します。
  4. Message」フィールドに、"Invalid Evaluation criteria End date" + .Emddateと入力する。
  5. 「LoggingLevel」フィールドに、「InfoForced」と入力します。

    message
    補足: デフォルトでは、PegaRULESログはログレベルがErrorに設定されたメッセージのみ記録します。 レベルをInfoForcedに設定すると、サーバーのログレベル設定を変更することなく、この制限が上書きされます。
  6. アクティビティを保存します。

    補足: 新しいActivityを作成するとワーニングが表示されますので、チェックイン前にGuardrailワーニングを適正化します。
  7. Employee Evaluationクラスで、IdentifyAssessmentPeriod_0 フローアクションを開きます。

    ヒント: フローアクションレコードは、Application Explorerの「Process」カテゴリーにあります。
  8. 「Action」タブをクリックします。
  9. Action」タブの後処理セクションの「Run activity」フィールドで、「WriteToLog」と入力または選択して、後処理アクションとしてフローアクションにアクティビティを追加します。
  10. フローアクションを保存して、設定変更をコミットします。

作業の確認

  1. 新規の Employee Evaluationケースを作成し、「Identify Employee」フォームに記入し、Submitします。
  2. 「Identify Assessmentフォームに進み、有効な「End date」を入力する。
  3. 有効な評価日を表示する代わりに、ケースが「Review」ステージに移行することを確認します。 
    valid dates
  4. トラブルシューティングして問題を確認するにはDev Studioにログインし、「Configure > System > Operations > Logs」を選択して、「System: Operations」ランディングページを表示します。
  5. 「Log utilities」で、「Log files」をクリックします。 新しいブラウザウィンドウにログビューアが表示され、サーバーに書き込まれたログファイルが一覧表示されます。
  6. 「File (click to view)」で、PEGA Appender Fileのログファイルをクリックすると、ウィンドウ内にログが表示されます。

    補足: セキュリティ上の理由から、演習環境ではログファイルをダウンロードするオプションは利用できません。
  7. ログファイルの中で、最新のエントリーを探します。 そのエントリーが、先に作成したアクティビティのログレベルとメッセージに一致することを確認します。このログメッセージエントリーは、IsEvalPeriodEndedルールがfalseを返したときのみ発生します。

    message1
    補足: ログファイルに複数のエントリーがある場合は、最新のタイムスタンプを持つエントリーを探します。
  8. ログファイルのあるウィンドウを閉じます。
  9. その後、Whenルールに戻り、Property のスペルが間違っていることを確認することができます。
  10. IsEvalPeriodEndedのWhen条件に戻り、スペルミスのあった「Emddate」を「EndDate」プロパティに置き換えます。
  11. 手順1-2を完了し、ビューに有効な評価日が含まれていることを確認します。
  12. IdentifyAssessmentPeriod_0フローアクションに戻り、Post-processing セクションのActionsタブからアクティビティを削除します。
  13. フローアクションを保存して、アプリケーションがテストメッセージを PEGA ログに書き込まないようにします。

    ヒント: Pega ログの乱雑さを減らし、パフォーマンスを向上させるには、InfoForced レベルのメッセージを書き込むアクティビティステップを削除するか、メッセージが不要になったらそれをコメントに変換します。


このモジュールは、下記のミッションにも含まれています。

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice