アプリケーションの開発では、処理の実行状況を順を追って見ていくことで、エラーの発見やアプリケーションの改善点を把握することが必要な場合が多々あります。
のデバッグとログの記録方法について見てみましょう。 AppMaster.
フロントエンドデバッグ
フロントエンドのデバッグを行うには Toast と Notification ブロックを使います。これらのブロックは、フロントエンドの通知を表示します。あるブロックがどのように動作するのかがわからない場合は、このブロックの値を Notification に渡して、完成したブロックがどんな値を与えるのかをフロントエンドで見てみましょう。
Toast そして Notification ブロックは、長いビジネスプロセスの中で、どこで何が間違っているのかを判断するために使用することができます。そのため Toast と Notification ブロックは、String 形式のデータを受け取ります。他の形式で保存されたデータを表示する必要がある場合は、 toString またはtoJSON ブロックを使用します(データベースからオブジェクトまたはオブジェクトの配列を表示する必要がある場合)。
標準的なロギング
すべての AppMaster プロジェクトには、標準的なロギングがあります。これは Project / Deploy Statsタブにあります。
追加で何かを書く必要がある場合、バックエンドのビジネスプロセスで特定の Write to logブロックがバックエンドビジネスプロセスにあります。
このブロックには2つの入力フィールドがあります。
Label - は、string 形式でログに書き込まれるタイトルです。入力 - ログに保存される任意の値です。
カスタムロガーの作成
多くのリクエストがアプリケーションに対して常に行われる場合、すべてを共通のログに書き込むのは不便です。指示に従って、独自のロガーを作成するのがよいでしょう。
データモデルを作成する Log.それにフィールドを追加します。
- Label - には、エントリーのタイトルが入ります。
- Text - 投稿本文に
ここで、ログに必要な値を保存するバックエンドのBPを作成します。のフィールドを設定します。 Start ブロックのフィールドを設定します。
- Label - を文字列形式で記録します。
- Text - をstring 形式で指定します。
では、この Make ブロックからフィールドを渡してレコードを作成しましょう。 Start ブロックのフィールドを渡して、レコードを作成してみましょう。
このレコードをデータベースに保存するには Create ブロックを使ってデータベースに保存します。
次に、フロントエンドからアクセスするために endpointを作成し、フロントエンドから新しいビジネスプロセスにアクセスできるようにします。フロントエンドからアクセスするために Endpoints タブに移動し、新しいものを作成します。
- を選択します。 POST method.
- を設定します。 URL.
- グループを選択します。
- 作成したビジネスプロセスをインストールします。
これで、ログを書きたい場所に、作成した業務プロセスを利用できるようになりました。
ここでは Task ページを例にとって考えてみましょう。このページには、ユーザーのタスクに関するエントリーを持つテーブルがあります。そしてまた、このページには、エントリーを追加するためのフォームがあります。このようなページはここと ここに作りました。
では、レコードを追加する処理を記録してみましょう。レコードを追加する Workflow ボタンを開きます。
の後にビジネスプロセスを追加します。 Server Request POST /taskブロックに追加します。フィールド _error と text.が設定されます。 label フィールドはデフォルトで設定されます。
これで、新しいレコードが作成されると、このイベントがログに記録されます。