nl::Weave::Profiles::DataManagement_Current

この名前空間には、現在本番環境での使用をサポートしている Weave Data Management(WDM)プロファイル用の Weave 内のすべてのインターフェースが含まれます。

概要

列挙型

@100{
  kTag_Region = 1,
  kTag_Message = 2
}
enum
kNestDebug_StringLogEntryEvent のタグ。
@101{
  kTag_Token = 1,
  kTag_Args = 2
}
enum
kNestDebug_TokenizedLogEntryEvent のタグ。
@102 enum
イベントを永続化するためのタグ。
@104 enum
WDM プロファイルのメッセージ タイプ。
@105 enum
WDM 固有のステータス コード。
@147 enum
@95{
  kTag_CurrentImportance = 1,
  kTag_ImportanceExpiration,
  kTag_MinimumLogUploadInterval,
  kTag_MaximumLogUploadInterval,
  kTag_LoggingDestination,
  kTag_TraitLoggingImportance
}
enum
Logging 設定タグ。
@96{
  kTag_SupportedLogTransports = 1,
  kTag_SupportsStreaming = 2,
  kTag_SupportsNonVolatileStorage = 3,
  kTag_SupportsPerTraitVerbosity = 4,
  kTag_LoggingVolume = 5,
  kTag_LogBufferingCapacity = 6
}
enum
ロギング機能のタグ。
@97{
  kTag_EventSource = 1,
  kTag_EventImportance = 2,
  kTag_EventID = 3,
  kTag_RelatedEventImportance = 10,
  kTag_RelatedEventID = 11,
  kTag_EventUTCTimestamp = 12,
  kTag_EventSystemTimestamp = 13,
  kTag_EventResourceID = 14,
  kTag_EventTraitProfileID = 15,
  kTag_EventTraitInstanceID = 16,
  kTag_EventType = 17,
  kTag_EventDeltaUTCTime = 30,
  kTag_EventDeltaSystemTime = 31,
  kTag_EventData = 50,
  kTag_ExternalEventStructure = 99
}
enum
イベント メタデータのタグ。
@98 enum
デバッグ トレイトのプロファイル定義。
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
enum
Google Nest Debug トレイトのイベントタイプ。
CommandFlags{
  kCommandFlag_MustBeVersionValid = 0x0001,
  kCommandFlag_InitiationTimeValid = 0x0002,
  kCommandFlag_ActionTimeValid = 0x0004,
  kCommandFlag_ExpiryTimeValid = 0x0008,
  kCommandFlag_IsOneWay = 0x0010
}
enum
ImportanceType{
  ProductionCritical = 1,
  Production,
  Info,
  Debug
}
enum
ログエントリの重要度。
LoggingManagementStates{
  kLoggingManagementState_Idle = 1,
  kLoggingManagementState_InProgress = 2,
  kLoggingManagementState_Holdoff = 3,
  kLoggingManagementState_Shutdown = 4
}
enum
TimestampType enum
EventOptions に含まれるタイムスタンプの有効性と型。

Typedef

CommandFlags typedef
DataVersion typedef
uint64_t
EventProcessor typedef
void *
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData) typedef
イベント ロギング サブシステムに eventData 要素を提供する関数。
FetchExternalEventsFunct)(EventLoadOutContext *aContext) typedef
イベントデータを取得するプラットフォーム コールバックの関数プロトタイプ。
GenericTraitSinkCatalog typedef
GenericTraitSourceCatalog typedef
ImportanceType typedef
ログエントリの重要度。
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext) typedef
void(*
トレイト ハンドル イテレータ。
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) typedef
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) typedef
void(*
外部イベントがリモート サブスクライバーに配信されたときに呼び出されるコールバックの関数プロトタイプ。
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) typedef
void(*
外部イベントがバッファから削除されたときに呼び出されるコールバックの関数プロトタイプ。
PropertyDictionaryKey typedef
uint16_t
PropertyPathHandle typedef
uint32_t
PropertyPathHandle は、トレイト インスタンスのルートを基準とする WDM パスの一意の 32 ビット数値ハッシュです。
PropertySchemaHandle typedef
uint16_t
SchemaVersion typedef
uint16_t
SingleResourceSinkTraitCatalog typedef
SingleResourceSourceTraitCatalog typedef
TimestampType typedef
EventOptions に含まれるタイムスタンプの有効性と型。
TraitDataHandle typedef
uint16_t
duration_t nl::Weave::Profiles::DataManagement_Current::duration_t
uint32_t
期間の記述に使用する型(ミリ秒単位)。
event_id_t nl::Weave::Profiles::DataManagement_Current::event_id_t
uint32_t
イベント ID のタイプ。
timestamp_t nl::Weave::Profiles::DataManagement_Current::timestamp_t
uint32_t
タイムスタンプの記述に使用する型(ミリ秒単位)。
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::utc_timestamp_t
uint64_t
UTC タイムスタンプの記述に使用する型(ミリ秒単位)。

変数

sInstance
sLogFileName = "topazlog"[]
char

関数

BdxErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode)
void
BdxGetBlockHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock)
void
BdxRejectHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport)
void
BdxSendAcceptHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg)
BdxXferDoneHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer)
void
BdxXferErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError)
void
CreatePropertyPathHandle(PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey)
EventWriterTLVCopy(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
すでにシリアル化されている eventdata 要素をイベント バッファに変換するヘルパー関数。
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
PropertyDictionaryKey
GetPropertySchemaHandle(PropertyPathHandle aHandle)
PropertySchemaHandle
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
bool
これは、バージョンを比較するアルゴリズムの最適化された実装です。
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
bool
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
TraitDataSink カタログ内の TraitUpdatableDataSink を検索するユーティリティ関数。
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
シリアル化済みのフォームからイベントを記録します。
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
シリアル化されたフォームからイベントを記録します(追加のオプションあり)。
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
コールバック経由でイベントをログに記録します。
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
オプションを使用して、コールバックを介してイベントをログに記録します。
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
LogFreeform は、デフォルトのイベント ストリームに自由形式の文字列を出力します。
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
デバッグ イベントとして自由形式のテキストを出力するヘルパー関数。
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
デバッグ イベントとして自由形式のテキストを出力するヘルパー関数。
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool

クラス

nl::Weave::Profiles::DataManagement_Current::AlwaysAcceptDataElementAccessControlDelegate
nl::Weave::Profiles::DataManagement_Current::BuilderBase

WDM メッセージ エンコーダの基本クラス。

nl::Weave::Profiles::DataManagement_Current::CircularEventReader

CircularEventBuffer に基づく TLVReader。

nl::Weave::Profiles::DataManagement_Current::Command
nl::Weave::Profiles::DataManagement_Current::CommandSender
nl::Weave::Profiles::DataManagement_Current::GenericTraitCatalogImpl

Weave では、すべて同じリソースを参照するトレイトデータ インスタンスのコレクション用に TraitCatalogBase インターフェースの実装が提供されていました。

nl::Weave::Profiles::DataManagement_Current::IDataElementAccessControlDelegate

NotifyRequest のデータ要素のプロセッサによって実装されるインターフェース。

nl::Weave::Profiles::DataManagement_Current::IDirtyPathCut
nl::Weave::Profiles::DataManagement_Current::IPathFilter
nl::Weave::Profiles::DataManagement_Current::IWeavePublisherLock

主要な WDM データ構造へのアクセスをシリアル化するためにアプリが実装するインターフェース。

nl::Weave::Profiles::DataManagement_Current::IWeaveWDMMutex

ミューテックス オブジェクトのインターフェース。

nl::Weave::Profiles::DataManagement_Current::ListBuilderBase

WDM メッセージ エンコーダの基本クラス。データリストやバージョン リストなどの TLV 配列要素に特化しています。

nl::Weave::Profiles::DataManagement_Current::ListParserBase

WDM メッセージ パーサーの基本クラス。データリストやバージョン リストなどの TLV 配列要素に特化しています。

nl::Weave::Profiles::DataManagement_Current::LogBDXUpload
nl::Weave::Profiles::DataManagement_Current::LoggingConfiguration

LoggingConfiguration は、Weave イベントの Logging サブシステムの構成可能なコンポーネントをカプセル化します。

nl::Weave::Profiles::DataManagement_Current::LoggingManagement

メモリ内イベントログを管理するためのクラス。

nl::Weave::Profiles::DataManagement_Current::NotificationEngine
nl::Weave::Profiles::DataManagement_Current::ParserBase

WDM メッセージ パーサーの基本クラス。

nl::Weave::Profiles::DataManagement_Current::ResourceIdentifier

リソースの ID をカプセル化する構造体。

nl::Weave::Profiles::DataManagement_Current::SingleResourceTraitCatalog
nl::Weave::Profiles::DataManagement_Current::SubscriptionClient
nl::Weave::Profiles::DataManagement_Current::SubscriptionEngine

これは、クライアント側とパブリッシャー側の両方で、すべての WDM Next サブスクリプションをホストするシングルトンです。

nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler
nl::Weave::Profiles::DataManagement_Current::TraitCatalogBase
nl::Weave::Profiles::DataManagement_Current::TraitDataSink
nl::Weave::Profiles::DataManagement_Current::TraitDataSource
nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine

スキーマ エンジンは、特定のトレイトに関連付けられたスキーマ情報を受け取り、それを解析して WDM 機器が使用可能な形式に変換する機能を提供します。

nl::Weave::Profiles::DataManagement_Current::TraitUpdatableDataSink
nl::Weave::Profiles::DataManagement_Current::UpdateClient
nl::Weave::Profiles::DataManagement_Current::UpdateDictionaryDirtyPathCut

辞書の子を持つプロパティ パスを処理するときに、辞書を保留キューに戻すユーティリティ クラス。

nl::Weave::Profiles::DataManagement_Current::UpdateDirtyPathFilter

通知を処理するときにパスをフィルタするユーティリティ クラス。

nl::Weave::Profiles::DataManagement_Current::UpdateEncoder

このオブジェクトは、WDM の UpdateRequest ペイロードと PartialUpdateRequest ペイロードをエンコードします。

nl::Weave::Profiles::DataManagement_Current::ViewClient

構造体

nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer

nl::Weave::TLV::WeaveCircularTLVBuffer を中心に構築された内部イベント バッファ。

nl::Weave::Profiles::DataManagement_Current::ConstSchemaVersionRange
nl::Weave::Profiles::DataManagement_Current::CopyAndAdjustDeltaTimeContext

走査イベントリストの内部構造。

nl::Weave::Profiles::DataManagement_Current::DebugLogContext
nl::Weave::Profiles::DataManagement_Current::DetailedRootSection

トレイト インスタンスの最大解像度を提供する構造。

nl::Weave::Profiles::DataManagement_Current::EventEnvelopeContext

イベントを走査するための内部構造。

nl::Weave::Profiles::DataManagement_Current::EventLoadOutContext

出力時にイベントリストをコピーするための構造。

nl::Weave::Profiles::DataManagement_Current::EventOptions

さまざまなイベント フィールドのオプションを提供する構造。

nl::Weave::Profiles::DataManagement_Current::EventSchema

イベント メタデータのスキーマを定義する構造。

nl::Weave::Profiles::DataManagement_Current::ExternalEvents

プラットフォームに保存されるイベントをトラッキングするための構造。

nl::Weave::Profiles::DataManagement_Current::LogStorageResources

ロギング管理の初期化に使用されるヘルパークラス。

nl::Weave::Profiles::DataManagement_Current::ReclaimEventCtx
nl::Weave::Profiles::DataManagement_Current::SchemaVersionRange
nl::Weave::Profiles::DataManagement_Current::TraitPath
nl::Weave::Profiles::DataManagement_Current::TraitPathStore
nl::Weave::Profiles::DataManagement_Current::VersionedTraitPath

共用体

nl::Weave::Profiles::DataManagement_Current::Timestamp

アプリケーション セット システムまたは UTC タイムスタンプを提供する統合。

名前空間

nl::Weave::Profiles::DataManagement_Current::BaseMessageWithSubscribeId
nl::Weave::Profiles::DataManagement_Current::CustomCommand

WDM カスタム コマンドの定義。

nl::Weave::Profiles::DataManagement_Current::CustomCommandResponse

WDM カスタム コマンド レスポンスの定義。

nl::Weave::Profiles::DataManagement_Current::DataElement

WDM データ要素の定義。

nl::Weave::Profiles::DataManagement_Current::DataList
nl::Weave::Profiles::DataManagement_Current::Event
nl::Weave::Profiles::DataManagement_Current::EventList
nl::Weave::Profiles::DataManagement_Current::NotificationRequest
nl::Weave::Profiles::DataManagement_Current::Path

WDM パスの定義。

nl::Weave::Profiles::DataManagement_Current::PathList

WDM パスリストの定義。

nl::Weave::Profiles::DataManagement_Current::Platform
nl::Weave::Profiles::DataManagement_Current::RejectionRecord
nl::Weave::Profiles::DataManagement_Current::RejectionRecordList
nl::Weave::Profiles::DataManagement_Current::StatusElement

WDM ステータス要素の定義。

nl::Weave::Profiles::DataManagement_Current::StatusList
nl::Weave::Profiles::DataManagement_Current::SubscribeCancelRequest
nl::Weave::Profiles::DataManagement_Current::SubscribeConfirmRequest
nl::Weave::Profiles::DataManagement_Current::SubscribeRequest
nl::Weave::Profiles::DataManagement_Current::SubscribeResponse
nl::Weave::Profiles::DataManagement_Current::UpdateRequest

WDM 更新リクエスト リクエストの定義。

nl::Weave::Profiles::DataManagement_Current::UpdateResponse
nl::Weave::Profiles::DataManagement_Current::VersionList
nl::Weave::Profiles::DataManagement_Current::ViewRequest
nl::Weave::Profiles::DataManagement_Current::ViewResponse

列挙型

@100

 @100

kNestDebug_StringLogEntryEvent のタグ。

プロパティ
kTag_Message

実際のデバッグ メッセージを含む文字列。

kTag_Region

ログ領域、つまりログメッセージが関係するモジュールを示す 32 ビットの符号なし。

@101

 @101

kNestDebug_TokenizedLogEntryEvent のタグ。

プロパティ
kTag_Args

トークン メッセージとともに送信される引数の配列。

kTag_Token

トークンに対応する 32 ビットの符号なし値。

@102

 @102

イベントを永続化するためのタグ。

@104

 @104

WDM プロファイルのメッセージ タイプ。

これらの値は、データ マネジメント仕様で呼び出されます。

@105

 @105

WDM 固有のステータス コード。

@147

 @147

@95

 @95

Logging 設定タグ。

プロパティ
kTag_CurrentImportance

現在のロギングの重要度。値の型は ImportanceType です。

kTag_ImportanceExpiration

現在の昇格されたロギング設定がデフォルト値に戻った時間(UTC 秒)。

kTag_LoggingDestination

ログのアップロード先を示す URL。

kTag_MaximumLogUploadInterval

自動的にトリガーされるログのアップロード試行間の最長時間(秒)。

kTag_MinimumLogUploadInterval

自動的にトリガーされるログのアップロード試行間の最小時間(秒)。

kTag_TraitLoggingImportance

選択したプロファイルを上位のログレベルに選択的にマッピングする配列(省略可)。

配列内の各要素は、システムのサブセットからのロギングを選択的に昇格させる形式(profile,path,loggingimportance)を取ります。プロファイルのロギング優先度の昇格は、ロギングの優先度が currentImportance の優先度を超えており、currentImportance と同じ有効期限が適用される場合にのみ重要です。

@96

 @96

ロギング機能のタグ。

プロパティ
kTag_LogBufferingCapacity

ログのバッファリング容量を KB 単位で表す 32 ビット符号なし整数。

kTag_LoggingVolume

予想されるログボリューム(KB/日)を示す 32 ビット符号なし整数。

kTag_SupportedLogTransports

サポートされている一連のログ転送メカニズム。

kTag_SupportsNonVolatileStorage

デバイスが不揮発性のログストレージをサポートしているかどうかを示すブール値。

kTag_SupportsPerTraitVerbosity

デバイスがトレイトごとの詳細度設定をサポートしているかどうかを示すブール値。

kTag_SupportsStreaming

デバイスがログのストリーミングをサポートしているかどうかを示すブール値。

@97

 @97

イベント メタデータのタグ。

タグ値のセマンティクスの詳細については、Event Design Specification を参照してください。

プロパティ
kTag_EventData

省略可。イベントデータ自体。空の場合、デフォルトで空の構造になります。

kTag_EventDeltaSystemTime

WDM 内部タグ、エンコード前のイベントとの時差。

kTag_EventDeltaUTCTime

WDM 内部タグ、エンコード前のイベントとの時差。

kTag_EventID

イベントのシーケンス番号。64 ビットの符号なしの量で表します。

連続している必要があり、シーケンス内のジャンプはイベント ギャップを示します。

kTag_EventImportance

イベントの重要性。

kTag_EventResourceID

省略可。

値は、イベントに関連するリソースの ID です。省略した場合、値は kTag_EventSource の値と同じになります。

kTag_EventSource

イベントを生成したデバイスの NodeID。

kTag_EventSystemTimestamp

省略可。イベントのシステム タイムスタンプ(ミリ秒単位)。

kTag_EventTraitInstanceID

省略可。イベントを生成したトレイトのインスタンス。

kTag_EventTraitProfileID

必須。トレイトの ProfileID に等しい 32 ビットの符号なし整数。

kTag_EventType

必須。このタイプのイベントの wdl.event.id に等しい 16 ビットの符号なし整数。

kTag_EventUTCTimestamp

省略可。イベントの UTC タイムスタンプ(ミリ秒単位)。

kTag_ExternalEventStructure

外部イベント用の内部タグ。有線で伝送しないでください。Weave ライブラリ外では使用しないでください。

kTag_RelatedEventID

省略可。

このイベントが関連しているイベントの ID。省略した場合、値は kTag_EventID の値と同じになります。

kTag_RelatedEventImportance

省略可。

関連イベントの重要度。省略した場合、値は kTag_EventImportance の値と等しくなります。

@98

 @98

デバッグ トレイトのプロファイル定義。

@99

 @99

Google Nest Debug トレイトのイベントタイプ。

プロパティ
kNestDebug_StringLogEntryEvent

自由形式文字列のデバッグ メッセージのイベント。

kNestDebug_TokenizedHeaderEntryEvent

トークン化されたヘッダー情報を伝えるイベント。

kNestDebug_TokenizedLogEntryEvent

トークン化されたデバッグ メッセージのイベント。

CommandFlags

 CommandFlags
プロパティ
kCommandFlag_ActionTimeValid

アクション時間が有効なときに設定されます。

kCommandFlag_ExpiryTimeValid

有効期限が有効なときに設定します。

kCommandFlag_InitiationTimeValid

初期化時刻が有効なときに設定されます。

kCommandFlag_IsOneWay

コマンドが一方向の場合に設定されます。

kCommandFlag_MustBeVersionValid

バージョン フィールドが有効な場合に設定されます。

ImportanceType

 ImportanceType

ログエントリの重要度。

重要度は、イベントをログに実際に出力する前にフィルタリングする方法として使用されます。イベントがログに記録された後は、ログから消去するためのプロビジョニングはそれ以上行われません。重要度によって、イベントの保存に優先順位が付けられます。重要度の高いイベントがバッファ全体に追加されると、重要度(および経過時間)の順でそのイベントが収まるように破棄されます。そのため、重要度には相対的な値しかありません。システムが 1 つの重要度のみを使用している場合、イベントはリングバッファと同様に、古い順にドロップされます。

プロパティ
Debug

デバッグの重要度は、システムの開発者にとって重要なログエントリを示します。これは、主に開発フェーズで使用されます。

制限されたデバイスの帯域幅や電力のバジェットでは、デバッグの重要度のログが考慮されません。そのため、本番環境システムでは限られた期間に限って使用する必要があります。

Info

情報の重要度は、実行中のシステムに関する追加の分析情報と診断を提供するログエントリを示します。

情報ロギングレベルは、本番環境システムでは長期間にわたって使用することも、フィールド トライアルでデフォルトのログレベルとして使用することもできます。制約のあるデバイスでは、Info レベルでログに記録されたエントリは、電力バジェットではなく帯域幅とメモリ バジェットで考慮される必要があります。

Production

本番環境の重要度は、Google Nest エコシステムの継続的なモニタリングとメンテナンスに使用されるログエントリを示します。

制約のあるデバイスでは、本番環境の重要度でログに記録されたエントリは、常にログに記録されてデバイスからオフロードされることが想定されるため、消費電力とメモリ バジェットに含める必要があります。

ProductionCritical

本番環境の重要度は、損失が顧客向け機能に直接影響するイベントを示します。

アプリケーションでは、システム障害を示すために本番環境上の重大なイベントの損失が生じることがあります。制約のあるデバイスでは、本番環境の重要度が「重大」でログに記録されたエントリは、常にログに記録され、デバイスからオフロードされることが想定されるため、電力とメモリのバジェットに考慮する必要があります。

LoggingManagementStates

 LoggingManagementStates
プロパティ
kLoggingManagementState_Holdoff

ログのオフロードが完了しました。ホールドオフが期限切れになるまでログは再開されません。

kLoggingManagementState_Idle

進行中のログ オフロードはありません。ログ オフロードは、制約なしで開始できます。

kLoggingManagementState_InProgress

ログのオフロードが進行中です。

kLoggingManagementState_Shutdown

ロギング オペレーションを実行できません。

TimestampType

 TimestampType

EventOptions に含まれるタイムスタンプの有効性と型。

Typedef

CommandFlags

enum nl::Weave::Profiles::DataManagement_Current::CommandFlags CommandFlags

DataVersion

uint64_t DataVersion

EventProcessor

void * EventProcessor

EventWriterFunct

WEAVE_ERROR(* EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)

イベント ロギング サブシステムに eventData 要素を提供する関数。

このタイプの関数は、イベント ロギング サブシステムに eventData 要素を提供することが想定されています。このタイプの関数は、イベント サブシステムによって必要なイベント メタデータがすべて生成された後に呼び出されます。この関数は nl::Weave::TLV::TLVWriter オブジェクトとともに呼び出され、kTag_EventData というタグが付いた単一の TLV 要素が出力されます。その要素の値は、イベントデータを含む構造体でなければなりません。イベントデータ自体は、コンテキスト タグを使って構造化する必要があります。

詳細
パラメータ
[in,out] ioWriter
イベントデータのシリアル化に使用される nl::Weave::TLV::TLVWriter オブジェクトへの参照。
[in] inDataTag
書き出す TLV のコンテキスト タグ。
[in] appData
アプリ固有のコンテキストへのポインタ。
戻り値
WEAVE_NO_ERROR
成功時。
other
イベントデータのシリアル化を完了できなかったことを呼び出し元に通知する適切なエラー。ioWriter の呼び出しによるエラーは、再マッピングせずに伝播する必要があります。関数からなんらかのエラーが返された場合、イベントの生成は中止され、イベントはログに書き込まれません。
関連情報:
PlainTextWriter
EventWriterTLVCopy

FetchExternalEventsFunct

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

イベントデータを取得するプラットフォーム コールバックの関数プロトタイプ。

FetchEventsBetween と同様に、このフェッチ関数は、EventLoadOutContext.mStartingEventID から ExternalEvents.mLastEventID まですべてのイベントを返します。

コンテキスト ポインタの型は FetchExternalEventsContext です。これには EventLoadOutContext と、TLV の形式のためのヘルパー変数が含まれています。また、コールバックの登録時に作成された ExternalEvents 構造体へのポインタも含まれます。コールバックのイベント ID の範囲を指定します。

関数から戻ると、EventLoadOutContext.mCurrentEventID は、TLV バッファに正常に書き込まれなかった最初のイベント ID を反映しているはずです。プラットフォームは、EventLogging プロトコルで指定された正しい形式で、イベント ヘッダーとデータを TLV ライターに書き込む必要があります。プラットフォームは、イベントとタイムスタンプの一意性も維持する必要があります。

すべての TLV エラーは上位レベルに反映する必要があります。たとえば、バッファ内の容量が足りなくなると、メッセージ送信がトリガーされ、残りのイベント ID を指定してコールバックが再度呼び出されます。

詳細
戻り値
WEAVE_ERROR_NO_MEMORY
予定を書き込むスペースがない場合。
WEAVE_ERROR_BUFFER_TOO_SMALL
予定を書き込むスペースがない場合。
WEAVE_NO_ERROR
成功時。
WEAVE_END_OF_TLV
成功時。

GenericTraitSinkCatalog

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

GenericTraitSourceCatalog

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

ImportanceType

enum nl::Weave::Profiles::DataManagement_Current::ImportanceType ImportanceType

ログエントリの重要度。

重要度は、イベントをログに実際に出力する前にフィルタリングする方法として使用されます。イベントがログに記録された後は、ログから消去するためのプロビジョニングはそれ以上行われません。重要度によって、イベントの保存に優先順位が付けられます。重要度の高いイベントがバッファ全体に追加されると、重要度(および経過時間)の順でそのイベントが収まるように破棄されます。そのため、重要度には相対的な値しかありません。システムが 1 つの重要度のみを使用している場合、イベントはリングバッファと同様に、古い順にドロップされます。

IteratorCallback

void(* IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)

トレイト ハンドル イテレータ。

LoggingBufferHandler

WEAVE_ERROR(* LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)

NotifyExternalEventsDeliveredFunct

void(* NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)

外部イベントがリモート サブスクライバーに配信されたときに呼び出されるコールバックの関数プロトタイプ。

外部イベントがリモート サブスクライバーに配信されると、エンジンは外部イベント プロバイダに通知を提供します。このコールバックには、最後に配信された ID のイベントと、イベントを受信したサブスクライバーの ID が含まれます。

詳細
パラメータ
[in] inEv
配信されたイベントに対応する外部イベント オブジェクト
[in] inLastDeliveredEventID
サブスクライバーに配信された最後のイベントの ID。
[in] inRecipientNodeID
受信者の Weave ノード ID

NotifyExternalEventsEvictedFunct

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

外部イベントがバッファから削除されたときに呼び出されるコールバックの関数プロトタイプ。

外部イベント オブジェクトが送信メッセージ バッファから削除されると、エンジンは外部イベント プロバイダに通知を提供します。このコールバックには、強制排除される外部イベントが含まれています。

詳細
パラメータ
[in] inEv
強制排除される外部イベント オブジェクト

PropertyDictionaryKey

uint16_t PropertyDictionaryKey

PropertyPathHandle

uint32_t PropertyPathHandle

PropertyPathHandle は、トレイト インスタンスのルートを基準とする WDM パスの一意の 32 ビット数値ハッシュです。

2 つの部分で構成されています。

  • スキーマの静的部分にマッピングされる下位 16 ビットの数値。
  • 下位 16 ビットがディクショナリ要素内のパスを参照する場合、上位 16 ビットの数値が存在し、その要素に関連するディクショナリキーを表します。下位 16 ビットが辞書以外の要素を参照する場合、上位 16 ビットは 0 でなければなりません。

次のような特徴があります。

  • すべてのトレイトには、独自のプロパティ パスのハンドル空間があります。
  • 一意のすべての WDM サブパスパスには、同様に一意の PropertyPathHandle があります。
  • PropertyPathHandle は、IDL のトレイト コンパイラによって自動生成され(現時点では手動で行います)、対応するトレイトのヘッダー ファイルで列挙リストとして表されます。
  • この構成では、アプリケーション ロジックで WDM パスを直接扱う必要はありません。WDM とのやり取りは、これらのハンドルのみを通じて行われます。
  • 特定の意味を持つパスハンドルには、次の 2 つの予約済み値があります。
    • 0 は「NULL」を示します。ハンドル
    • 1 はトレイト インスタンスのルートを指すハンドルを示します。

PropertySchemaHandle

uint16_t PropertySchemaHandle

SchemaVersion

uint16_t SchemaVersion

SingleResourceSinkTraitCatalog

SingleResourceTraitCatalog< TraitDataSink > SingleResourceSinkTraitCatalog

SingleResourceSourceTraitCatalog

SingleResourceTraitCatalog< TraitDataSource > SingleResourceSourceTraitCatalog

TimestampType

enum nl::Weave::Profiles::DataManagement_Current::TimestampType TimestampType

EventOptions に含まれるタイムスタンプの有効性と型。

TraitDataHandle

uint16_t TraitDataHandle

duration_t

uint32_t duration_t

期間の記述に使用する型(ミリ秒単位)。

event_id_t

uint32_t event_id_t

イベント ID のタイプ。

timestamp_t

uint32_t timestamp_t

タイムスタンプの記述に使用する型(ミリ秒単位)。

utc_timestamp_t

uint64_t utc_timestamp_t

UTC タイムスタンプの記述に使用する型(ミリ秒単位)。

変数

sInstance

LoggingManagement sInstance

sLogFileName

char sLogFileName[] = "topazlog"

関数

BdxErrorHandler

void BdxErrorHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  WEAVE_ERROR aErrorCode
)

BdxGetBlockHandler

void BdxGetBlockHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  uint64_t *aLength,
  uint8_t **aDataBlock,
  bool *aIsLastBlock
)

BdxRejectHandler

void BdxRejectHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  nl::Weave::Profiles::StatusReporting::StatusReport *aReport
)

BdxSendAcceptHandler

WEAVE_ERROR BdxSendAcceptHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg
)

BdxXferDoneHandler

void BdxXferDoneHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer
)

BdxXferErrorHandler

void BdxXferErrorHandler(
  nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer,
  nl::Weave::Profiles::StatusReporting::StatusReport *aXferError
)

CreatePropertyPathHandle

PropertyPathHandle CreatePropertyPathHandle(
  PropertySchemaHandle aPropertyPathSchemaId,
  PropertyDictionaryKey aPropertyPathDictionaryKey
)

EventWriterTLVCopy

WEAVE_ERROR EventWriterTLVCopy(
  TLVWriter & ioWriter,
  uint8_t inDataTag,
  void *appData
)

すでにシリアル化されている eventdata 要素をイベント バッファに変換するヘルパー関数。

詳細
パラメータ
[in,out] ioWriter
イベントの記述に使用するライター
[in] inDataTag
コピーする TLV のコンテキスト タグ。ここでは使用しませんが、EventWriterFunct の typedef で必要です。
[in] appData
シリアル化されたイベントデータを保持する TLVReader へのポインタ。
戻り値
WEAVE_NO_ERROR
成功時。
other
ioWriter から返されるその他のエラー。

GetPropertyDictionaryKey

PropertyDictionaryKey GetPropertyDictionaryKey(
  PropertyPathHandle aHandle
)

GetPropertySchemaHandle

PropertySchemaHandle GetPropertySchemaHandle(
  PropertyPathHandle aHandle
)

IsNullPropertyPathHandle

bool IsNullPropertyPathHandle(
  PropertyPathHandle aHandle
)

IsRootPropertyPathHandle

bool IsRootPropertyPathHandle(
  PropertyPathHandle aHandle
)

IsVersionNewer

bool IsVersionNewer(
  const DataVersion & aVersion,
  const DataVersion & aReference
)

これは、バージョンを比較するアルゴリズムの最適化された実装です。

クライアント側では、サービスから受信するバージョンは常に最新のバージョンです。

IsVersionNewerOrEqual

bool IsVersionNewerOrEqual(
  const DataVersion & aVersion,
  const DataVersion & aReference
)

使用可能な

TraitUpdatableDataSink * Locate(
  TraitDataHandle aTraitDataHandle,
  const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog
)

TraitDataSink カタログ内の TraitUpdatableDataSink を検索するユーティリティ関数。

詳細
パラメータ
[in] aTraitDataHandle
検索するシンクのハンドル。
[in] aDataSinkCatalog
検索するカタログ。
戻り値
TraitUpdatableDataSink へのポインタ。ハンドルが存在しないか、更新不可の TraitDataSink をポイントしている場合は、NULL を返します。

LogEvent

event_id_t LogEvent(
  const EventSchema & inSchema,
  nl::Weave::TLV::TLVReader & inData
)

シリアル化済みのフォームからイベントを記録します。

この関数は、nl::Weave::TLV::TLVReader として表されるイベントをログに記録します。これは、nl::Weave::TLV::TLVReader の基になるストレージ内で、イベントデータ表現がすでにシリアル化されていることを意味します。nl::Weave::TLV::TLVReader には少なくとも 1 つのデータ要素を含める必要があり、その要素は構造体である必要があります。リーダーから最初に読み取られた要素はイベントデータとして扱われ、イベントログに保存されます。イベントデータには、inProfileID と inEventType で識別されるスキーマ内で解釈されるコンテキスト タグが含まれていなければなりません。最初の要素のタグは無視されます。イベントロギングシステムによって eventData タグに置き換えられます。

inImportance が LoggingConfiguration で指定されたロギングしきい値を超えると、イベントがログに記録されます。イベントの重要度が現在のしきい値を満たしていない場合、イベントは破棄され、結果のイベント ID として 0 が返されます。

この呼び出しのバリアントは、すべてのデフォルトのイベント オプションを暗黙的に指定します。

  • イベントには、通話時点の現在時刻のタイムスタンプが付けられます。
  • イベントが、呼び出し元のデバイスに関連しているとマークされます。
  • 他のイベントとは無関係のスタンドアロンの
  • 予定が非緊急としてマークされている場合

詳細
パラメータ
[in] inSchema
このイベントの重要性、プロフィール ID、構造タイプを定義するスキーマ
[in] inData
最初の要素としてイベントデータを含む TLV リーダー。
戻り値
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。

LogEvent

event_id_t LogEvent(
  const EventSchema & inSchema,
  nl::Weave::TLV::TLVReader & inData,
  const EventOptions *inOptions
)

シリアル化されたフォームからイベントを記録します(追加のオプションあり)。

この関数は、nl::Weave::TLV::TLVReader として表されるイベントをログに記録します。これは、nl::Weave::TLV::TLVReader の基になるストレージ内で、イベントデータ表現がすでにシリアル化されていることを意味します。nl::Weave::TLV::TLVReader には少なくとも 1 つのデータ要素を含める必要があり、その要素は構造体である必要があります。リーダーから最初に読み取られた要素はイベントデータとして扱われ、イベントログに保存されます。イベントデータには、inProfileID と inEventType で識別されるスキーマ内で解釈されるコンテキスト タグが含まれていなければなりません。最初の要素のタグは無視されます。イベントロギングシステムによって eventData タグに置き換えられます。

inImportance が LoggingConfiguration で指定されたロギングしきい値を超えると、イベントがログに記録されます。イベントの重要度が現在のしきい値を満たしていない場合、イベントは破棄され、結果のイベント ID として 0 が返されます。

この呼び出しバリアントでは、呼び出し元は EventOptions の任意の組み合わせを設定できます。

  • タイムスタンプ。0 はデフォルトで呼び出し時点の現在時刻に設定され、
  • 「root」イベントソースのセクション(イベントソースとトレイト ID)NULL の場合は、デフォルトで現在のデバイスが使用されます。イベントが、呼び出し元のデバイスに関連しているとマークされます。
  • イベント ID をグループ化するための関連イベント ID関連イベント ID が 0 の場合、そのイベントは他のイベントと無関係としてマークされます。
  • 緊急性デフォルトは「non-urgent」です。

詳細
パラメータ
[in] inSchema
このイベントの重要性、プロフィール ID、構造タイプを定義するスキーマ
[in] inData
最初の要素としてイベントデータを含む TLV リーダー。NULL は指定できません
[in] inOptions
イベント メタデータのオプション。NULL の場合もあります。
戻り値
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。

LogEvent

event_id_t LogEvent(
  const EventSchema & inSchema,
  EventWriterFunct inEventWriter,
  void *inAppData
)

コールバック経由でイベントをログに記録します。

この関数は、EventWriterFunct として表されるイベントとアプリ固有の appData コンテキストをログに記録します。この関数はイベント メタデータを書き込み、nl::Weave::TLV::TLVWriter 参照と inAppData コンテキストを指定して inEventWriter を呼び出します。これにより、ユーザーコードがイベントデータを直接イベントログに出力できるようになります。この形式のイベント・ロギングは、イベント・データがターゲット・バッファに直接シリアル化されるため、メモリ消費量を最小限に抑えます。イベントデータには、inProfileIDinEventType で識別されるスキーマ内で解釈されるコンテキスト タグが含まれていなければなりません。最初の要素のタグは無視されます。イベントロギングシステムによって eventData タグに置き換えられます。

inImportance が LoggingConfiguration で指定されたロギングしきい値を超えると、イベントがログに記録されます。イベントの重要度が現在のしきい値を満たしていない場合、イベントは破棄され、結果のイベント ID として 0 が返されます。

この呼び出しのバリアントは、すべてのデフォルトのイベント オプションを暗黙的に指定します。

  • イベントには、通話時点の現在時刻のタイムスタンプが付けられます。
  • イベントが、呼び出し元のデバイスに関連しているとマークされます。
  • 他のイベントとは無関係のスタンドアロンの
  • 予定が非緊急としてマークされている場合

詳細
パラメータ
[in] inSchema
このイベントの重要性、プロフィール ID、構造タイプを定義するスキーマ
[in] inEventWriter
イベントデータを実際にシリアル化するために呼び出すコールバック
[in] inAppData
コールバックのアプリ コンテキスト。
戻り値
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。

LogEvent

event_id_t LogEvent(
  const EventSchema & inSchema,
  EventWriterFunct inEventWriter,
  void *inAppData,
  const EventOptions *inOptions
)

オプションを使用して、コールバックを介してイベントをログに記録します。

この関数は、EventWriterFunct として表されるイベントとアプリ固有の appData コンテキストをログに記録します。この関数はイベント メタデータを書き込み、nl::Weave::TLV::TLVWriter 参照と inAppData コンテキストを指定して inEventWriter を呼び出します。これにより、ユーザーコードがイベントデータを直接イベントログに出力できるようになります。この形式のイベント・ロギングは、イベント・データがターゲット・バッファに直接シリアル化されるため、メモリ消費量を最小限に抑えます。イベントデータには、inProfileIDinEventType で識別されるスキーマ内で解釈されるコンテキスト タグが含まれていなければなりません。最初の要素のタグは無視されます。イベントロギングシステムによって eventData タグに置き換えられます。

inImportance が LoggingConfiguration で指定されたロギングしきい値を超えると、イベントがログに記録されます。イベントの重要度が現在のしきい値を満たしていない場合、イベントは破棄され、結果のイベント ID として 0 が返されます。

この呼び出しバリアントでは、呼び出し元は EventOptions の任意の組み合わせを設定できます。

  • タイムスタンプ。0 はデフォルトで呼び出し時点の現在時刻に設定され、
  • 「root」イベントソースのセクション(イベントソースとトレイト ID)NULL の場合は、デフォルトで現在のデバイスが使用されます。イベントが、呼び出し元のデバイスに関連しているとマークされます。
  • イベント ID をグループ化するための関連イベント ID関連イベント ID が 0 の場合、そのイベントは他のイベントと無関係としてマークされます。
  • 緊急性デフォルトは「non-urgent」です。

詳細
パラメータ
[in] inSchema
このイベントの重要性、プロフィール ID、構造タイプを定義するスキーマ
[in] inEventWriter
イベントデータを実際にシリアル化するために呼び出すコールバック
[in] inAppData
コールバックのアプリ コンテキスト。
[in] inOptions
イベント メタデータのオプション。NULL の場合もあります。
戻り値
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。

LogFreeform

event_id_t LogFreeform(
  ImportanceType inImportance,
  const char *inFormat,
  ...
)

LogFreeform は、デフォルトのイベント ストリームに自由形式の文字列を出力します。

この文字列は、他のログに記録された文字列と構造的に同じデバッグ イベント構造にカプセル化されます。イベント プロファイル ID は Nest Debug イベントの ID になり、イベントタイプは kNestDebug_StringLogEntryEvent になります。

詳細
パラメータ
[in] inImportance
ログエントリの重要性重要度が現在の重要度を下回った場合、イベントは実際には記録されません
[in] inFormat
printf 準拠の形式文字列の後に、形式設定される引数が続きます
戻り値
event_id_t イベントがログに書き込まれた場合はイベント ID。それ以外の場合は 0。

LookForElementWithTag

WEAVE_ERROR LookForElementWithTag(
  const nl::Weave::TLV::TLVReader & aSrcReader,
  const uint64_t aTagInApiForm,
  nl::Weave::TLV::TLVReader *apDstReader
)

PlainTextWriter

WEAVE_ERROR PlainTextWriter(
  TLVWriter & ioWriter,
  uint8_t inDataTag,
  void *appData
)

デバッグ イベントとして自由形式のテキストを出力するヘルパー関数。

デバッグ イベントは、logregion と自由形式のテキストを含む構造体です。

詳細
パラメータ
[in,out] ioWriter
イベントの記述に使用するライター
[in] appData
DebugLogContext へのポインタ。これは文字列形式、引数、ログ領域を保持する構造体です。
[in] inDataTag
書き出す TLV のコンテキスト タグ。ここでは使用しませんが、EventWriterFunct の typedef で必要です。
戻り値
WEAVE_NO_ERROR
成功時。
other
ioWriter から返されるその他のエラー。

PlainTextWriter

WEAVE_ERROR PlainTextWriter(
  ::nl::Weave::TLV::TLVWriter & ioWriter,
  uint8_t inDataTag,
  void *appData
)

デバッグ イベントとして自由形式のテキストを出力するヘルパー関数。

デバッグ イベントは、logregion と自由形式のテキストを含む構造体です。

詳細
パラメータ
[in,out] ioWriter
イベントの記述に使用するライター
[in] inDataTag
出力するタグ
[in] appData
DebugLogContext へのポインタ。これは文字列形式、引数、ログ領域を保持する構造体です。
戻り値
WEAVE_NO_ERROR
成功時。
other
ioWriter から返される可能性のあるその他のエラー。

operator!=

bool operator!=(
  const ResourceIdentifier & lhs,
  const ResourceIdentifier & rhs
)

演算子==

bool operator==(
  const ResourceIdentifier & lhs,
  const ResourceIdentifier & rhs
)