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

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

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

LoggingConfiguration は、Weave Event 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 タイムスタンプを提供する共用体。

Namespace

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

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

タグ値の完全なセマンティクスについては、イベント設計仕様をご覧ください。

プロパティ
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

「本番環境の重要性」は、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)

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

FetchEventsEvents と同様に、このフェッチ関数は 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 があります。
  • PropertyPathHandles は、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 の場合、デフォルトは呼び出し時点の現在時刻
  • イベントソース(イベントソースとトレイト ID)の「root」セクション。NULL の場合、デフォルトは現在のデバイスになります。イベントは、呼び出し元のデバイスに関連するものとしてマークされます。
  • イベント ID をグループ化するための関連イベント ID。関連イベント ID が 0 の場合、そのイベントは他のどのイベントにも関連しないものとしてマークされます。
  • デフォルトでは「非緊急」に設定されます。

詳細
パラメータ
[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 の場合、デフォルトは呼び出し時点の現在時刻
  • イベントソース(イベントソースとトレイト ID)の「root」セクション。NULL の場合、デフォルトは現在のデバイスになります。イベントは、呼び出し元のデバイスに関連するものとしてマークされます。
  • イベント ID をグループ化するための関連イベント ID。関連イベント ID が 0 の場合、そのイベントは他のどのイベントにも関連しないものとしてマークされます。
  • デフォルトでは「非緊急」に設定されます。

詳細
パラメータ
[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 は Google 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 から返される可能性のあるその他のエラー。

演算子「!=」を使用する

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

演算子==

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