属性
属性は、Backtrace データベース(coroner)にインデックスを生成するための鍵となるメタデータポイントを定義します。これらの coroner インデックスが、フィルタリング、レポート、可視化、スナップショットの取得に使用されます。それらを使用して、興味深いパターンを観察することで、どのような影響を及ぼしているかを明らかにし、根本原因を調査できます。たとえば、クラッシュの任意のグループについて、プロセスの稼働時間やメモリの使用状況の分布を、リアルタイムでリクエストできます。
属性は、クエリ、グループ化、フィルタリングを実行する必要がある、スナップショットに追加されたメタデータポイントごとに作成することをお勧めします。たとえば、このプロジェクトに属する各エラー送信に対して build_tag
を追加する場合は、「build_tag」を属性として追加してください。
特定のプロジェクトに属性を作成するには、右上のメニューから「プロジェクト設定」にアクセスし、左のメニューから「属性」にアクセスします。 「属性」セクション上部の「+」をクリックし、属性の名前、種類、フォーマット、説明を入力します(以下の属性の詳細を参照)。または、すでにプロジェクトに属性が設定されている場合は、「推奨」タブをクリックし、最近エラー送信に設定されたものの、まだインデックスが作成されていないすべての属性の一覧を表示します。
設定
「名前」:属性の名前
「説明」:属性の説明
「フォーマット」:値のレンダリングに使用されるデータ型のフォーマット。次のフォーマットがサポートされています。
- バイト数 - キロバイト、ギガバイト、テラバイト、バイト:この下にある列には整数値が格納され、それらの値が指定した単位として扱われることが期待されます。これは整数型でのみ有効です。
- その他 - コールスタック:この下にある列には、すべての要素が関数である、文字列のシーケンスとしてのコールスタックを表す、シリアライズされた JSON オブジェクトが格納されます。これはディクショナリでのみ有効です。
- その他 - メモリアドレス:値はメモリアドレスを表します。それらはそのようにレンダリングされる必要があります。これは整数型でのみ有効です。
- その他 - sha256:列には sha256 の値が格納されます。ディクショナリ型でのみ有効です。
- その他 - UUID:この列には、一意識別子値が格納されます。
- ネットワーキング - ホスト名:この下にある列の名前は、マシンのホスト名です。これはディクショナリでのみ有効です。
- ネットワーキング - ipv4:この列には、ipv4 アドレスが格納されます。これは、uint32 型でのみ使用する必要があります。JavaScript が値を IP アドレスとしてレンダリングする必要があります(例については morgue を参照)。
- ネットワーキング - ipv6:この列には、ipv6 アドレスが格納されます。これは、ディクショナリ型でのみ使用できます。
- 時間 - この列には、GPS タイムスタンプ、JavaScript タイムスタンプ、UNIX タイムスタンプ、ナノ秒、ミリ秒、秒など、さまざまなタイムスタンプ形式のいずれかが格納されます。
- バージョン管理:セマンティックバージョンまたはコミットハッシュ文字列。
- なし:値がそのままレンダリングされます。
「タイプ」:属性のデータ型。システムでは、選択された「フォーマット」に基づいて「タイプ」の選択が試行され、ユーザーはこれを変更できます。次のデータ型がサポートされています。
- boolean:True または False
- string:この型は、カーディナリティの低い文字列(2B 未満の一意の値)を格納するために使用する必要があります。例として、コミット、バージョン、環境などが挙げられます。このエンコーディングは、ディクショナリにすでに存在する文字列を列に格納するために 4 バイトのスペースのみを必要とする点で効率的です。
- uint64、uint32、uint16、uint8:これらは符号なし整数型であり、それぞれ 64 ビット、32 ビット、16 ビット、8 ビットの整数を格納するために使用できます。