nl::Weave::Profiles::DataManagement_Current

Vùng chứa tên này bao gồm tất cả giao diện trong hồ sơ Weave for Weave Management Management (WDM) hiện đang được hỗ trợ để sử dụng cho việc tạo.

Tóm tắt

Bảng liệt kê

@100{
  kTag_Region = 1,
  kTag_Message = 2
}
enum
Thẻ cho kNestDebug_StringLogEntryEvent.
@101{
  kTag_Token = 1,
  kTag_Args = 2
}
enum
Thẻ cho kNestDebug_TokenizedLogEntryEvent.
@102 enum
Các thẻ cho các sự kiện liên tục.
@104 enum
Các loại thông báo hồ sơ WDM.
@105 enum
Mã trạng thái WDM riêng.
@147 enum
@95{
  kTag_CurrentImportance = 1,
  kTag_ImportanceExpiration,
  kTag_MinimumLogUploadInterval,
  kTag_MaximumLogUploadInterval,
  kTag_LoggingDestination,
  kTag_TraitLoggingImportance
}
enum
Ghi nhật ký Thẻ cài đặt.
@96{
  kTag_SupportedLogTransports = 1,
  kTag_SupportsStreaming = 2,
  kTag_SupportsNonVolatileStorage = 3,
  kTag_SupportsPerTraitVerbosity = 4,
  kTag_LoggingVolume = 5,
  kTag_LogBufferingCapacity = 6
}
enum
Thẻ cho khả năng ghi nhật ký.
@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
Thẻ cho siêu dữ liệu sự kiện.
@98 enum
Định nghĩa về cấu hình cho đặc điểm gỡ lỗi.
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
enum
Các loại sự kiện cho đặc điểm 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
Tầm quan trọng của mục nhập nhật ký.
LoggingManagementStates{
  kLoggingManagementState_Idle = 1,
  kLoggingManagementState_InProgress = 2,
  kLoggingManagementState_Holdoff = 3,
  kLoggingManagementState_Shutdown = 4
}
enum
TimestampType enum
Tính hợp lệ và loại dấu thời gian có trong EventOptions.

Typedef

CommandFlags typedef
DataVersion typedef
uint64_t
EventProcessor typedef
void *
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData) typedef
Một hàm cung cấp phần tử eventData cho hệ thống con ghi nhật ký sự kiện.
FetchExternalEventsFunct)(EventLoadOutContext *aContext) typedef
Nguyên mẫu hàm cho các lệnh gọi lại nền tảng tìm nạp dữ liệu sự kiện.
GenericTraitSinkCatalog typedef
GenericTraitSourceCatalog typedef
ImportanceType typedef
Tầm quan trọng của mục nhập nhật ký.
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext) typedef
void(*
Trình lặp lại của phần tử xử lý.
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) typedef
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) typedef
void(*
Nguyên mẫu hàm cho một lệnh gọi lại được gọi khi các sự kiện bên ngoài được gửi đến người đăng ký từ xa.
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) typedef
void(*
Nguyên mẫu hàm cho một lệnh gọi lại được gọi khi các sự kiện bên ngoài bị loại khỏi vùng đệm.
PropertyDictionaryKey typedef
uint16_t
PropertyPathHandle typedef
uint32_t
PropertyPathHandle là một hàm băm số 32 bit duy nhất của đường dẫn WDM so với thư mục gốc của một phiên bản đặc điểm.
PropertySchemaHandle typedef
uint16_t
SchemaVersion typedef
uint16_t
SingleResourceSinkTraitCatalog typedef
SingleResourceSourceTraitCatalog typedef
TimestampType typedef
Tính hợp lệ và loại dấu thời gian có trong EventOptions.
TraitDataHandle typedef
uint16_t
duration_t nl::Weave::Profiles::DataManagement_Current::duration_t
uint32_t
Loại dùng để mô tả thời lượng, tính bằng mili giây.
event_id_t nl::Weave::Profiles::DataManagement_Current::event_id_t
uint32_t
Loại mã sự kiện.
timestamp_t nl::Weave::Profiles::DataManagement_Current::timestamp_t
uint32_t
Loại dùng để mô tả dấu thời gian tính bằng mili giây.
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::utc_timestamp_t
uint64_t
Loại dùng để mô tả dấu thời gian UTC tính bằng mili giây.

Biến

sInstance
sLogFileName = "topazlog"[]
char

Hàm

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)
Hàm trợ giúp dịch phần tử dữ liệu sự kiện đã được chuyển đổi tuần tự vào vùng đệm sự kiện.
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
PropertyDictionaryKey
GetPropertySchemaHandle(PropertyPathHandle aHandle)
PropertySchemaHandle
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
bool
Đây là hoạt động triển khai được tối ưu hoá của thuật toán để so sánh các phiên bản.
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
bool
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
Hàm tiện ích tìm TraitUpdatableDataSink trong danh mục TraitDataSink.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
Ghi nhật ký một sự kiện từ biểu mẫu tuần tự trước.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
Ghi nhật ký một sự kiện từ biểu mẫu dạng chuyển đổi tuần tự, có thêm các tuỳ chọn khác.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
Ghi nhật ký một sự kiện thông qua lệnh gọi lại.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
Ghi nhật ký một sự kiện thông qua lệnh gọi lại, với các tùy chọn.
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
LogFreeform phát ra một chuỗi tự do cho luồng sự kiện mặc định.
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Hàm trợ giúp để phát văn bản dạng tự do dưới dạng sự kiện gỡ lỗi.
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Hàm trợ giúp để phát văn bản dạng tự do dưới dạng sự kiện gỡ lỗi.
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool

Lớp

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

Lớp cơ sở cho bộ mã hoá thông báo WDM.

nl::Weave::Profiles::DataManagement_Current::CircularEventreader

Một TLVReader do CircularEventBuffer hỗ trợ.

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

Weave đã cung cấp phương thức triển khai giao diện TraitCatalogBase cho một tập hợp các phiên bản dữ liệu đặc điểm mà tất cả đều tham chiếu đến cùng một tài nguyên.

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

Giao diện sẽ được bộ xử lý các phần tử dữ liệu triển khai trong một RequestRequest.

nl::Weave::Profiles::DataManagement_Current::IDirtyPathCắt
nl::Weave::Profiles::DataManagement_Current::IPathFilter
nl::Weave::Profiles::DataManagement_Current::IWeavePublisherLock

Giao diện sẽ được ứng dụng triển khai để chuyển đổi tuần tự quyền truy cập vào các cấu trúc dữ liệu WDM chính.

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

Giao diện của đối tượng mutex.

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

Lớp cơ sở cho các bộ mã hoá thông báo WDM, chuyên dùng trong các phần tử mảng TLV như Danh sách dữ liệu và Danh sách phiên bản.

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

Lớp cơ sở cho các trình phân tích cú pháp thông báo WDM, chuyên dùng trong các phần tử mảng TLV như Danh sách dữ liệu và Danh sách phiên bản.

nl::Weave::Profiles::DataManagement_Current::LogBDXTải lên
nl::Weave::Profiles::DataManagement_Current::LoggingConfiguration

LoggingConfiguration đóng gói thành phần có thể định cấu hình của hệ thống con Logging sự kiện của Weave.

nl::Weave::Profiles::DataManagement_Current::Quản lý nhật ký

Một lớp (class) để quản lý nhật ký sự kiện trong bộ nhớ.

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

Lớp cơ sở cho trình phân tích cú pháp thông báo WDM.

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

Cấu trúc bao gồm mã nhận dạng của một tài nguyên.

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

Đây là singleton lưu trữ tất cả gói thuê bao WDM Next, cả phía ứng dụng và nhà xuất bản.

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

Công cụ giản đồ này lấy thông tin giản đồ liên kết với một đặc điểm cụ thể và cung cấp các cơ sở để phân tích cú pháp và dịch thông tin đó thành biểu mẫu mà máy móc WDM có thể sử dụng.

nl::Weave::Profiles::DataManagement_Current::TraitUpdatableDataSink
nl::Weave::Profiles::DataManagement_Current::UpdateClient
nl::Weave::Profiles::DataManagement_Current::UpdateDictionaryDirtyPathCắt

Lớp tiện ích giúp đưa từ điển trở lại hàng đợi đang chờ xử lý khi xử lý đường dẫn thuộc tính có từ điển con.

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

Lớp tiện ích để lọc đường dẫn khi xử lý thông báo.

nl::Weave::Profiles::DataManagement_Current::UpdateEncoder (Trình quản lý dữ liệu:

Đối tượng này mã hóa các phần tải dữ liệu WDM UpdateRequest và PartialUpdateRequest.

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

Cấu trúc

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

Vùng đệm sự kiện nội bộ được tạo dựa trên nl::Weave::TLV::WeaveCircularTLVBuffer.

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

Cấu trúc nội bộ để truyền danh sách sự kiện.

nl::Weave::Profiles::DataManagement_Current::DebugLogContext
nl::Weave::Profiles::DataManagement_Current::DetailsRoot tìm

Cấu trúc cung cấp độ phân giải đầy đủ cho các thực thể đặc điểm.

nl::Weave::Profiles::DataManagement_Current::EventPhongContext

Cấu trúc nội bộ trong việc truyền tải các sự kiện.

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

Cấu trúc để sao chép danh sách sự kiện trên đầu ra.

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

Cấu trúc cung cấp các lựa chọn cho nhiều trường sự kiện.

nl::Weave::Profiles::DataManagement_Current::SchemaSchema

Cấu trúc xác định một giản đồ cho siêu dữ liệu sự kiện.

nl::Weave::Profiles::ManagementManagement_Current::ExternalEvent

Cấu trúc để theo dõi các sự kiện do nền tảng lưu trữ.

nl::Weave::Profiles::ManagementManagement_Current::LogStorageResources

Một lớp trợ giúp dùng để khởi chạy tính năng quản lý ghi nhật ký.

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

Liên minh

nl::Weave::Profiles::DataManagement_Current::Dấu thời gian

Hợp nhất cung cấp hệ thống nhóm ứng dụng hoặc dấu thời gian UTC.

Không gian tên

nl::Weave::Profiles::DataManagement_Current::BaseMessageWithSubscriptionId
nl::Weave::Profiles::DataManagement_Current::CustomCommand

Định nghĩa Command tùy chỉnh của WDM.

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

Định nghĩa phản hồi Command tùy chỉnh của WDM.

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

Định nghĩa phần tử dữ liệu WDM.

nl::Weave::Profiles::DataManagement_Current::DataList
nl::Weave::Profiles::DataManagement_Current::Sự kiện
nl::Weave::Profiles::DataManagement_Current::Danh sách sự kiện
nl::Weave::Profiles::DataManagement_Current::NotificationRequest
nl::Weave::Profiles::DataManagement_Current::Đường dẫn

Định nghĩa Đường dẫn WDM.

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

Định nghĩa danh sách Đường dẫn WDM.

nl::Weave::Profiles::DataManagement_Current::Nền tảng
nl::Weave::Profiles::DataManagement_Current::FromionRecord
nl::Weave::Profiles::ManagementManagement_Current::Từ chốiBản ghi
nl::Weave::Profiles::DataManagement_Current::StatusElement

Định nghĩa phần tử trạng thái WDM.

nl::Weave::Profiles::DataManagement_Current::Trạng thái
nl::Weave::Profiles::DataManagement_Current::SubscriptionsCancelRequest
nl::Weave::Profiles::DataManagement_Current::subscribeConfirmRequest
nl::Weave::Profiles::DataManagement_Current::SubscriptionsRequest
nl::Weave::Profiles::DataManagement_Current::SubscriptionsPhản hồi
nl::Weave::Profiles::DataManagement_Current::UpdateRequest

Định nghĩa Yêu cầu cập nhật WDM.

nl::Weave::Profiles::ManagementManagement_Current::UpdateResponse
nl::Weave::Profiles::DataManagement_Current::Danh sách phiên bản
nl::Weave::Profiles::DataManagement_Current::ViewRequest
nl::Weave::Profiles::DataManagement_Current::ViewResponse

Bảng liệt kê

@100

 @100

Thẻ cho kNestDebug_StringLogEntryEvent.

Thuộc tính
kTag_Message

Một chuỗi chứa thông báo gỡ lỗi thực tế.

kTag_Region

Bỏ dấu 32 bit cho biết vùng nhật ký, tức là mô-đun liên quan đến thông điệp nhật ký.

@101

 @101

Thẻ cho kNestDebug_TokenizedLogEntryEvent.

Thuộc tính
kTag_Args

Một mảng các đối số sẽ được gửi cùng với thông báo mã thông báo.

kTag_Token

Một giá trị không dấu 32 bit tương ứng với mã thông báo.

@102

 @102

Các thẻ cho các sự kiện liên tục.

@104

 @104

Các loại thông báo hồ sơ WDM.

Những giá trị này được gọi ra trong thông số quản lý dữ liệu.

@105

 @105

Mã trạng thái WDM riêng.

@147

 @147

@95

 @95

Ghi nhật ký Thẻ cài đặt.

Thuộc tính
kTag_CurrentImportance

Tầm quan trọng của việc ghi nhật ký hiện tại, giá trị thuộc loại ImportanceType.

kTag_ImportanceExpiration

Thời gian, tính theo giây UTC khi các cài đặt ghi nhật ký hiện tại nâng cao trở lại giá trị mặc định.

kTag_LoggingDestination

URL biểu thị đích đến tải lên nhật ký.

kTag_MaximumLogUploadInterval

Thời lượng tối đa (tính bằng giây) giữa các lần tải nhật ký lên được tự động kích hoạt.

kTag_MinimumLogUploadInterval

Thời lượng tối thiểu tính bằng giây giữa các lần tải nhật ký lên được tự động kích hoạt.

kTag_TraitLoggingImportance

Một mảng tuỳ chọn liên kết các hồ sơ đã chọn với các cấp độ ghi nhật ký cao hơn.

Mỗi phần tử trong mảng có một dạng (hồ sơ,đường dẫn,quan trọng là nhật ký) để nâng cao chất lượng nhật ký từ một tập hợp con của hệ thống. Mức độ ưu tiên ghi nhật ký hồ sơ nâng cao chỉ có ý nghĩa khi mức độ ưu tiên ghi nhật ký vượt quá mức độ ưu tiên của currentImportance và phải có cùng thời gian hết hạn với currentImportance.

@96

 @96

Thẻ cho khả năng ghi nhật ký.

Thuộc tính
kTag_LogBufferingCapacity

Số nguyên không dấu 32 bit mô tả dung lượng bộ nhớ đệm nhật ký bằng kB.

kTag_LoggingVolume

Số nguyên không dấu 32 bit mô tả khối lượng ghi nhật ký dự kiến bằng kB/ngày.

kTag_SupportedLogTransports

Một mảng các cơ chế vận chuyển nhật ký được hỗ trợ.

kTag_SupportsNonVolatileStorage

Boolean cho biết thiết bị có hỗ trợ bộ nhớ nhật ký không thay đổi hay không.

kTag_SupportsPerTraitVerbosity

Boolean cho biết thiết bị có hỗ trợ chế độ cài đặt độ chi tiết theo từng chỉ số hay không.

kTag_SupportsStreaming

Boolean cho biết thiết bị có hỗ trợ nhật ký phát trực tuyến hay không.

@97

 @97

Thẻ cho siêu dữ liệu sự kiện.

Để biết ngữ nghĩa hoàn chỉnh của các giá trị thẻ, hãy xem Thông số kỹ thuật thiết kế sự kiện.

Thuộc tính
kTag_EventData

Không bắt buộc. Bản thân dữ liệu sự kiện. Nếu để trống, cấu trúc này sẽ mặc định sử dụng cấu trúc trống.

kTag_EventDeltaSystemTime

Thẻ nội bộ WDM, chênh lệch thời gian so với sự kiện trước đó trong quá trình mã hóa.

kTag_EventDeltaUTCTime

Thẻ nội bộ WDM, chênh lệch thời gian so với sự kiện trước đó trong quá trình mã hóa.

kTag_EventID

Số sự kiện theo trình tự, được biểu thị dưới dạng số lượng 64 bit chưa ký.

Phải tuần tự, nhảy trong trình tự cho biết sự kiện trống.

kTag_EventImportance

Tầm quan trọng của sự kiện.

kTag_EventResourceID

Không bắt buộc.

Giá trị là mã nhận dạng tài nguyên của sự kiện. Khi bị bỏ qua, giá trị sẽ giống với giá trị của kTag_EventSource

kTag_EventSource

NodeID của thiết bị đã tạo ra sự kiện.

kTag_EventSystemTimestamp

Không bắt buộc. Dấu thời gian hệ thống của sự kiện tính bằng mili giây.

kTag_EventTraitInstanceID

Không bắt buộc, bản sao của đặc điểm đã tạo ra sự kiện.

kTag_EventTraitProfileID

Bắt buộc. Số nguyên 32 bit không dấu bằng với ID ID của đặc điểm.

kTag_EventType

Bắt buộc. Số nguyên 16 bit không dấu bằng với wdl.event.id cho loại sự kiện này.

kTag_EventUTCTimestamp

Không bắt buộc. Dấu thời gian theo giờ UTC của sự kiện tính bằng mili giây.

kTag_ExternalEventStructure

Thẻ nội bộ cho các sự kiện bên ngoài. Không bao giờ truyền qua dây, không bao giờ được sử dụng bên ngoài thư viện Weave.

kTag_RelatedEventID

Không bắt buộc.

Mã của một sự kiện liên quan đến sự kiện này. Nếu bạn bỏ qua thẻ này, giá trị sẽ bằng với giá trị của kTag_EventID.

kTag_RelatedEventImportance

Không bắt buộc.

Tầm quan trọng của sự kiện liên quan. Nếu bạn bỏ qua thuộc tính này, giá trị sẽ bằng với giá trị của kTag_EventImportance.

@98

 @98

Định nghĩa về cấu hình cho đặc điểm gỡ lỗi.

@99

 @99

Các loại sự kiện cho đặc điểm Nest Debug.

Thuộc tính
kNestDebug_StringLogEntryEvent

Một sự kiện cho thông báo gỡ lỗi chuỗi dạng tự do.

kNestDebug_TokenizedHeaderEntryEvent

Một sự kiện để truyền đạt thông tin về tiêu đề được mã hoá.

kNestDebug_TokenizedLogEntryEvent

Một sự kiện cho thông báo gỡ lỗi được mã hóa.

Cờ hiệu

 CommandFlags
Thuộc tính
kCommandFlag_ActionTimeValid

Đặt thời điểm hành động hợp lệ.

kCommandFlag_ExpiryTimeValid

Đặt thời điểm hết hạn hợp lệ.

kCommandFlag_InitiationTimeValid

Đặt thời điểm init hợp lệ.

kCommandFlag_IsOneWay

Đặt thời điểm lệnh là một chiều.

kCommandFlag_MustBeVersionValid

Đặt thời điểm trường phiên bản hợp lệ.

Loại quan trọng

 ImportanceType

Tầm quan trọng của mục nhập nhật ký.

Mức độ quan trọng được dùng như một cách để lọc các sự kiện trước khi chúng thực sự được phát vào nhật ký. Sau khi sự kiện diễn ra trong nhật ký, chúng tôi sẽ không thực hiện thêm điều khoản nào để xoá sự kiện đó khỏi nhật ký. Mức độ quan trọng đóng vai trò ưu tiên bộ nhớ sự kiện. Nếu một sự kiện có tầm quan trọng cao được thêm vào bộ đệm đầy đủ, thì các sự kiện sẽ bị loại bỏ theo thứ tự mức độ quan trọng (và độ tuổi) để phù hợp với sự kiện đó. Do đó, các mức độ quan trọng chỉ có giá trị tương đối. Nếu hệ thống chỉ sử dụng một mức độ quan trọng, thì các sự kiện chỉ bị loại bỏ theo thứ tự tuổi, chẳng hạn như vùng đệm đổ chuông.

Thuộc tính
Debug

Tầm quan trọng của gỡ lỗi biểu thị các mục nhập nhật ký mà các nhà phát triển hệ thống quan tâm và được sử dụng chủ yếu trong giai đoạn phát triển.

Nhật ký gỡ lỗi về mức độ quan trọng không được tính đến trong băng thông hoặc ngân sách nguồn của các thiết bị bị hạn chế. Do đó, chỉ được sử dụng chúng trong một khoảng thời gian có hạn trong hệ thống sản xuất.

Info

Mức độ quan trọng của thông tin thể hiện các mục nhập nhật ký cung cấp thêm thông tin chi tiết và chẩn đoán về hệ thống đang chạy.

Cấp độ ghi nhật ký thông tin có thể được sử dụng trong một khoảng thời gian dài trong hệ thống sản xuất hoặc có thể được dùng làm cấp độ nhật ký mặc định trong phiên bản thử nghiệm. Trên các thiết bị bị ràng buộc, các mục nhập được ghi bằng cấp Thông tin phải được tính vào băng thông và ngân sách bộ nhớ, nhưng không phải trong ngân sách nguồn.

Production

Tầm quan trọng của quá trình sản xuất cho biết các mục nhập nhật ký được dùng trong quá trình theo dõi và bảo trì liên tục hệ sinh thái Nest.

Trên các thiết bị bị ràng buộc, các mục nhập được ghi lại với tầm quan trọng trong quá trình sản xuất phải được tính đến trong ngân sách nguồn và bộ nhớ, vì dự kiến chúng sẽ luôn được ghi lại và giảm tải từ thiết bị.

ProductionCritical

Tầm quan trọng của quá trình sản xuất biểu thị những sự kiện có tổn thất trực tiếp với các tính năng dành cho khách hàng.

Các ứng dụng có thể bị mất các sự kiện Sản xuất nghiêm trọng để chỉ báo lỗi hệ thống. Trên các thiết bị bị ràng buộc, các mục nhập được ghi lại bằng Tầm quan trọng trong quá trình sản xuất phải được tính đến trong ngân sách nguồn và bộ nhớ, vì dự kiến chúng sẽ luôn được ghi lại và giảm tải từ thiết bị.

Trạng thái LoggingManagementState

 LoggingManagementStates
Thuộc tính
kLoggingManagementState_Holdoff

Quá trình giảm nhật ký đã hoàn tất; chúng tôi không khởi động lại nhật ký cho đến khi thời gian tạm ngưng hết hạn.

kLoggingManagementState_Idle

Không có quá trình giảm tải nhật ký nào đang diễn ra, quá trình giảm tải nhật ký có thể bắt đầu mà không có bất kỳ hạn chế nào.

kLoggingManagementState_InProgress

Đang tải nhật ký.

kLoggingManagementState_Shutdown

Không thể thực hiện bất kỳ thao tác ghi nhật ký nào.

Loại dấu thời gian

 TimestampType

Tính hợp lệ và loại dấu thời gian có trong EventOptions.

Typedef

Cờ hiệu

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

Phiên bản dữ liệu

uint64_t DataVersion

Trình xử lý sự kiện

void * EventProcessor

Sự kiện viết

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

Một hàm cung cấp phần tử eventData cho hệ thống con ghi nhật ký sự kiện.

Theo dự kiến, các hàm thuộc loại này sẽ cung cấp phần tử eventData cho hệ thống ghi nhật ký sự kiện phụ. Các hàm thuộc loại này được gọi sau khi hệ thống con của sự kiện đã tạo tất cả siêu dữ liệu sự kiện bắt buộc. Hàm này được gọi bằng một đối tượng nl::Weave::TLV::TLVWriter mà đối tượng này sẽ phát ra một phần tử TLV duy nhất được gắn thẻ kTag_EventData; giá trị của phần tử đó PHẢI là một cấu trúc chứa dữ liệu sự kiện. Bạn phải định cấu trúc dữ liệu sự kiện bằng cách sử dụng thẻ ngữ cảnh.

Thông tin chi tiết
Các tham số
[in,out] ioWriter
Giá trị tham chiếu đến đối tượng nl::Weave::TLV::TLVWriter sẽ được dùng để chuyển đổi tuần tự dữ liệu sự kiện.
[in] inDataTag
Một thẻ ngữ cảnh cho TLV mà chúng ta đang viết.
[in] appData
Con trỏ trỏ đến ngữ cảnh cụ thể của ứng dụng.
Giá trị trả về
WEAVE_NO_ERROR
Thành công.
other
Đã xảy ra lỗi thích hợp cho người gọi biết rằng không thể hoàn tất quá trình chuyển đổi tuần tự dữ liệu của sự kiện. Các lỗi từ lệnh gọi đến ioWriter sẽ được phổ biến mà không cần ánh xạ lại. Nếu hàm trả về bất kỳ loại lỗi nào, việc tạo sự kiện sẽ bị huỷ và sự kiện không được ghi vào nhật ký.
Xem thêm:
PlainTextWriter
EventWriterTLVCopy

FetchExternalEventFunct

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

Nguyên mẫu hàm cho các lệnh gọi lại nền tảng tìm nạp dữ liệu sự kiện.

Tương tự như FetchEventFrom, hàm tìm nạp này trả về tất cả sự kiện từ EventLoadOutContext.mStartEventID thông qua ExternalEvents.mLastEventID.

Con trỏ ngữ cảnh thuộc loại FetchExternalEventContext. Lưu ý này bao gồm EventLoadOutContext, với một số biến trình trợ giúp cho định dạng của TLV. Nó cũng bao gồm một con trỏ tới cấu trúc ExternalEvents được tạo khi đăng ký lệnh gọi lại. Thao tác này sẽ chỉ định phạm vi mã sự kiện cho lệnh gọi lại.

Khi trả về từ hàm, EventLoadOutContext.mCurrentEventID phải phản ánh mã sự kiện đầu tiên chưa được ghi thành công vào vùng đệm TLV. Nền tảng này phải ghi tiêu đề và dữ liệu sự kiện vào trình ghi TLV theo đúng định dạng và được chỉ định bởi giao thức EventLogging. Nền tảng này cũng phải duy trì tính riêng biệt của các sự kiện và dấu thời gian.

Tất cả các lỗi TLV phải được truyền lên cấp cao hơn. Ví dụ: việc hết dung lượng trong vùng đệm sẽ kích hoạt một thông báo được gửi, theo sau là một lệnh gọi khác đến lệnh gọi lại với bất kỳ mã sự kiện nào còn lại.

Thông tin chi tiết
Giá trị trả về
WEAVE_ERROR_NO_MEMORY
Nếu không có không gian để ghi sự kiện.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu không có không gian để ghi sự kiện.
WEAVE_NO_ERROR
Thành công.
WEAVE_END_OF_TLV
Thành công.

Tóm tắt về mèo

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

GenericTraitSourceCatalog

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

Loại quan trọng

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

Tầm quan trọng của mục nhập nhật ký.

Mức độ quan trọng được dùng như một cách để lọc các sự kiện trước khi chúng thực sự được phát vào nhật ký. Sau khi sự kiện diễn ra trong nhật ký, chúng tôi sẽ không thực hiện thêm điều khoản nào để xoá sự kiện đó khỏi nhật ký. Mức độ quan trọng đóng vai trò ưu tiên bộ nhớ sự kiện. Nếu một sự kiện có tầm quan trọng cao được thêm vào bộ đệm đầy đủ, thì các sự kiện sẽ bị loại bỏ theo thứ tự mức độ quan trọng (và độ tuổi) để phù hợp với sự kiện đó. Do đó, các mức độ quan trọng chỉ có giá trị tương đối. Nếu hệ thống chỉ sử dụng một mức độ quan trọng, thì các sự kiện chỉ bị loại bỏ theo thứ tự tuổi, chẳng hạn như vùng đệm đổ chuông.

Trình gọi lại

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

Trình lặp lại của phần tử xử lý.

LoggingBufferHandler

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

NotificationExternalEventsDeliveryFunct

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

Nguyên mẫu hàm cho một lệnh gọi lại được gọi khi các sự kiện bên ngoài được gửi đến người đăng ký từ xa.

Khi các sự kiện bên ngoài được gửi đến một người đăng ký từ xa, công cụ này sẽ gửi thông báo cho nhà cung cấp sự kiện bên ngoài. Lệnh gọi lại chứa sự kiện của mã nhận dạng cuối cùng đã được gửi và mã của người đăng ký đã nhận sự kiện.

Thông tin chi tiết
Các tham số
[in] inEv
Đối tượng sự kiện bên ngoài tương ứng với sự kiện được phân phối
[in] inLastDeliveredEventID
Mã sự kiện cuối cùng được gửi đến người đăng ký.
[in] inRecipientNodeID
Mã nút dệt của người nhận

Thông báo bên ngoài sự kiệnEvictedFunct

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

Nguyên mẫu hàm cho một lệnh gọi lại được gọi khi các sự kiện bên ngoài bị loại khỏi vùng đệm.

Khi đối tượng sự kiện bên ngoài bị loại khỏi vùng đệm thông báo đi, công cụ sẽ cung cấp thông báo cho nhà cung cấp sự kiện bên ngoài. Lệnh gọi lại chứa sự kiện bên ngoài sẽ bị loại.

Thông tin chi tiết
Các tham số
[in] inEv
Đối tượng sự kiện bên ngoài sẽ bị loại

Khóa từ điển thuộc tính

uint16_t PropertyDictionaryKey

Xử lý đường dẫn tài sản

uint32_t PropertyPathHandle

PropertyPathHandle là một hàm băm số 32 bit duy nhất của đường dẫn WDM so với thư mục gốc của một phiên bản đặc điểm.

Phần này có hai phần:

  • Số 16 bit thấp hơn liên kết với phần tĩnh của giản đồ.
  • Khi 16 bit thấp hơn tham chiếu đến một đường dẫn trong thành phần từ điển, thì số 16 bit trên sẽ đại diện cho khóa từ điển liên kết với phần tử đó. Nếu 16 bit thấp hơn tham chiếu đến một phần tử không phải từ điển, thì 16 bit trên phải là 0.

Một số đặc điểm:

  • Mỗi đặc điểm đều có không gian xử lý đường dẫn thuộc tính riêng.
  • Mỗi đường dẫn phụ WDM duy nhất sẽ có một PropertyPathHandle duy nhất tương tự.
  • PropertyPathHandles được tạo tự động (hiện tại được thực hiện bằng tay) bởi một trình biên dịch tính năng từ IDL và được biểu thị dưới dạng một danh sách liệt kê trong tệp tiêu đề của đặc điểm tương ứng.
  • Với cấu trúc này, logic ứng dụng không bao giờ phải trực tiếp xử lý các đường dẫn WDM. Thay vào đó, các hoạt động tương tác của họ với WDM được thực hiện độc quyền thông qua các trình xử lý này.
  • Có hai giá trị đặt trước cho các ô điều khiển đường dẫn có ý nghĩa cụ thể:
    • 0 chỉ ra một ' NULL' handle
    • 1 cho biết ô điều khiển trỏ đến gốc của thực thể tính năng.

Xử lý sơ đồ tài sản

uint16_t PropertySchemaHandle

Phiên bản giản đồ

uint16_t SchemaVersion

Xúc tác tài nguyên đơn tài nguyên

SingleResourceTraitCatalog< TraitDataSink > SingleResourceSinkTraitCatalog

SingleResourceSourceTraitCatalog (SingleResourceSourceTraitCatalog)

SingleResourceTraitCatalog< TraitDataSource > SingleResourceSourceTraitCatalog

Loại dấu thời gian

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

Tính hợp lệ và loại dấu thời gian có trong EventOptions.

Xử lý dữ liệu

uint16_t TraitDataHandle

thời_lượng_t

uint32_t duration_t

Loại dùng để mô tả thời lượng, tính bằng mili giây.

event_id_t

uint32_t event_id_t

Loại mã sự kiện.

timestamp_t (dấu thời gian)

uint32_t timestamp_t

Loại dùng để mô tả dấu thời gian tính bằng mili giây.

utc_timestamp_t

uint64_t utc_timestamp_t

Loại dùng để mô tả dấu thời gian UTC tính bằng mili giây.

Biến

Thực thể

LoggingManagement sInstance

Tên tệp sLogFile

char sLogFileName[] = "topazlog"

Hàm

Trình xử lý lỗi BdxError

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
)

Trình xử lý từ chối Bdx

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
)

Trình xử lý lỗi BdxXferErrorHandler

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

Tạo tài sản đường dẫn

PropertyPathHandle CreatePropertyPathHandle(
  PropertySchemaHandle aPropertyPathSchemaId,
  PropertyDictionaryKey aPropertyPathDictionaryKey
)

EventWriterTLVCopy

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

Hàm trợ giúp dịch phần tử dữ liệu sự kiện đã được chuyển đổi tuần tự vào vùng đệm sự kiện.

Thông tin chi tiết
Các tham số
[in,out] ioWriter
Tác giả sẽ viết kịch bản sự kiện
[in] inDataTag
Một thẻ ngữ cảnh cho TLV mà chúng ta đang sao chép. Không được sử dụng ở đây, nhưng bắt buộc theo typedef cho EventWriterFunct.
[in] appData
Con trỏ trỏ đến TLVReader lưu giữ dữ liệu sự kiện tuần tự.
Giá trị trả về
WEAVE_NO_ERROR
Thành công.
other
Các lỗi khác mà mey trả về từ ioWriter.

Nhận khoá thuộc tính

PropertyDictionaryKey GetPropertyDictionaryKey(
  PropertyPathHandle aHandle
)

Nhận thuộc tính schema

PropertySchemaHandle GetPropertySchemaHandle(
  PropertyPathHandle aHandle
)

IsNullPropertyPathHandle

bool IsNullPropertyPathHandle(
  PropertyPathHandle aHandle
)

IsRootPropertyPathHandle

bool IsRootPropertyPathHandle(
  PropertyPathHandle aHandle
)

IsVersionNewer

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

Đây là hoạt động triển khai được tối ưu hoá của thuật toán để so sánh các phiên bản.

Về phía máy khách, phiên bản nhận được từ dịch vụ này luôn là phiên bản mới nhất.

IsVersionNewerOrEqual

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

Định vị

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

Hàm tiện ích tìm TraitUpdatableDataSink trong danh mục TraitDataSink.

Thông tin chi tiết
Các tham số
[in] aTraitDataHandle
Tay cầm Bồn rửa để tra cứu.
[in] aDataSinkCatalog
Danh mục để tìm kiếm.
Trả về
Con trỏ trỏ đến TraitUpdatableDataSink; giá trị NULL nếu ô điều khiển không tồn tại hoặc trỏ đến TraitDataSink không thể cập nhật.

LogEvent

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

Ghi nhật ký một sự kiện từ biểu mẫu tuần tự trước.

Hàm này ghi lại sự kiện được biểu thị là nl::Weave::TLV::TLVReader. Điều này có nghĩa là việc biểu diễn dữ liệu sự kiện đã được chuyển đổi tuần tự trong bộ nhớ nằm ở nl::Weave::TLV::TLVReader. nl::Weave::TLV::TLVreader dự kiến sẽ chứa ít nhất một phần tử dữ liệu duy nhất, phần tử đó phải là một cấu trúc. Phần tử đầu tiên được đọc từ trình đọc sẽ được coi là dữ liệu sự kiện và được lưu trữ trong nhật ký sự kiện. Dữ liệu sự kiện PHẢI chứa các thẻ ngữ cảnh sẽ được diễn giải trong giản đồ do inProfileID và inEventType xác định. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế nó bằng thẻ eventData.

Sự kiện này được ghi lại nếu mức độ quan trọng của sự kiện được ghi lại vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu tầm quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị bỏ qua và hàm sẽ trả về 0 làm mã sự kiện kết quả.

Biến thể này của lệnh gọi ngầm chỉ định tất cả các tùy chọn sự kiện mặc định:

  • sự kiện này được dấu thời gian với thời gian hiện tại tại thời điểm diễn ra cuộc gọi,
  • sự kiện được đánh dấu là có liên quan đến thiết bị đang thực hiện cuộc gọi,
  • sự kiện là sự kiện độc lập, không liên quan đến bất kỳ sự kiện nào khác,
  • sự kiện này được đánh dấu là không khẩn cấp,

Thông tin chi tiết
Các tham số
[in] inSchema
Giản đồ xác định tầm quan trọng, mã hồ sơ và loại cấu trúc của sự kiện này.
[in] inData
Trình đọc TLV chứa dữ liệu sự kiện làm phần tử đầu tiên.
Trả về
event_id_t ID sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì 0.

LogEvent

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

Ghi nhật ký một sự kiện từ biểu mẫu dạng chuyển đổi tuần tự, có thêm các tuỳ chọn khác.

Hàm này ghi lại sự kiện được biểu thị là nl::Weave::TLV::TLVReader. Điều này có nghĩa là việc biểu diễn dữ liệu sự kiện đã được chuyển đổi tuần tự trong bộ nhớ nằm ở nl::Weave::TLV::TLVReader. nl::Weave::TLV::TLVreader dự kiến sẽ chứa ít nhất một phần tử dữ liệu duy nhất, phần tử đó phải là một cấu trúc. Phần tử đầu tiên được đọc từ trình đọc sẽ được coi là dữ liệu sự kiện và được lưu trữ trong nhật ký sự kiện. Dữ liệu sự kiện PHẢI chứa các thẻ ngữ cảnh sẽ được diễn giải trong giản đồ do inProfileID và inEventType xác định. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế nó bằng thẻ eventData.

Sự kiện này được ghi lại nếu mức độ quan trọng của sự kiện được ghi lại vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu tầm quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị bỏ qua và hàm sẽ trả về 0 làm mã sự kiện kết quả.

Biến thể này của lệnh gọi cho phép phương thức gọi đặt bất kỳ tổ hợp nào của EventOptions:

  • dấu thời gian, khi 0 mặc định là thời gian hiện tại tại thời điểm diễn ra cuộc gọi,
  • "root" nguồn của sự kiện (nguồn sự kiện và mã sự kiện); nếu giá trị là NULL, thì sự kiện này mặc định áp dụng cho thiết bị hiện tại. Sự kiện này được đánh dấu là có liên quan đến thiết bị đang thực hiện cuộc gọi,
  • một mã sự kiện có liên quan để nhóm các mã sự kiện; khi mã sự kiện có liên quan là 0, sự kiện đó sẽ được đánh dấu là không liên quan đến bất kỳ sự kiện nào khác,
  • khẩn cấp; theo mặc định, không khẩn cấp.

Thông tin chi tiết
Các tham số
[in] inSchema
Giản đồ xác định tầm quan trọng, mã hồ sơ và loại cấu trúc của sự kiện này.
[in] inData
Trình đọc TLV chứa dữ liệu sự kiện làm phần tử đầu tiên. Không được là NULL
[in] inOptions
Các tùy chọn cho siêu dữ liệu sự kiện. Có thể là NULL (RỖNG).
Trả về
event_id_t ID sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì 0.

LogEvent

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

Ghi nhật ký một sự kiện thông qua lệnh gọi lại.

Hàm này ghi lại sự kiện được biểu thị dưới dạng EventWriterFunct và một ngữ cảnh appData dành riêng cho ứng dụng. Hàm này ghi siêu dữ liệu sự kiện và gọi inEventWriter bằng tham chiếu nl::Weave::TLV::TLVWriter và ngữ cảnh inAppData để mã người dùng có thể phát trực tiếp dữ liệu sự kiện vào nhật ký sự kiện. Hình thức ghi nhật ký sự kiện này sẽ giảm thiểu mức sử dụng bộ nhớ, vì dữ liệu sự kiện được chuyển đổi tuần tự trực tiếp trong vùng đệm mục tiêu. Dữ liệu sự kiện PHẢI chứa các thẻ ngữ cảnh sẽ được diễn giải trong giản đồ do inProfileIDinEventType xác định. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế nó bằng thẻ eventData.

Sự kiện này được ghi lại nếu mức độ quan trọng của sự kiện được ghi lại vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu tầm quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị bỏ qua và hàm sẽ trả về 0 làm mã sự kiện kết quả.

Biến thể này của lệnh gọi ngầm chỉ định tất cả các tùy chọn sự kiện mặc định:

  • sự kiện này được dấu thời gian với thời gian hiện tại tại thời điểm diễn ra cuộc gọi,
  • sự kiện được đánh dấu là có liên quan đến thiết bị đang thực hiện cuộc gọi,
  • sự kiện là sự kiện độc lập, không liên quan đến bất kỳ sự kiện nào khác,
  • sự kiện này được đánh dấu là không khẩn cấp,

Thông tin chi tiết
Các tham số
[in] inSchema
Giản đồ xác định tầm quan trọng, mã hồ sơ và loại cấu trúc của sự kiện này.
[in] inEventWriter
Lệnh gọi lại để gọi để chuyển đổi tuần tự dữ liệu sự kiện
[in] inAppData
Ngữ cảnh ứng dụng cho lệnh gọi lại.
Trả về
event_id_t ID sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì 0.

LogEvent

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

Ghi nhật ký một sự kiện thông qua lệnh gọi lại, với các tùy chọn.

Hàm này ghi lại sự kiện được biểu thị dưới dạng EventWriterFunct và một ngữ cảnh appData dành riêng cho ứng dụng. Hàm này ghi siêu dữ liệu sự kiện và gọi inEventWriter bằng tham chiếu nl::Weave::TLV::TLVWriter và ngữ cảnh inAppData để mã người dùng có thể phát trực tiếp dữ liệu sự kiện vào nhật ký sự kiện. Hình thức ghi nhật ký sự kiện này sẽ giảm thiểu mức sử dụng bộ nhớ, vì dữ liệu sự kiện được chuyển đổi tuần tự trực tiếp trong vùng đệm mục tiêu. Dữ liệu sự kiện PHẢI chứa các thẻ ngữ cảnh sẽ được diễn giải trong giản đồ do inProfileIDinEventType xác định. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế nó bằng thẻ eventData.

Sự kiện này được ghi lại nếu mức độ quan trọng của sự kiện được ghi lại vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu tầm quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị bỏ qua và hàm sẽ trả về 0 làm mã sự kiện kết quả.

Biến thể này của lệnh gọi cho phép phương thức gọi đặt bất kỳ tổ hợp nào của EventOptions:

  • dấu thời gian, khi 0 mặc định là thời gian hiện tại tại thời điểm diễn ra cuộc gọi,
  • "root" nguồn của sự kiện (nguồn sự kiện và mã sự kiện); nếu giá trị là NULL, thì sự kiện này mặc định áp dụng cho thiết bị hiện tại. Sự kiện này được đánh dấu là có liên quan đến thiết bị đang thực hiện cuộc gọi,
  • một mã sự kiện có liên quan để nhóm các mã sự kiện; khi mã sự kiện có liên quan là 0, sự kiện đó sẽ được đánh dấu là không liên quan đến bất kỳ sự kiện nào khác,
  • khẩn cấp; theo mặc định, không khẩn cấp.

Thông tin chi tiết
Các tham số
[in] inSchema
Giản đồ xác định tầm quan trọng, mã hồ sơ và loại cấu trúc của sự kiện này.
[in] inEventWriter
Lệnh gọi lại để gọi để chuyển đổi tuần tự dữ liệu sự kiện
[in] inAppData
Ngữ cảnh ứng dụng cho lệnh gọi lại.
[in] inOptions
Các tùy chọn cho siêu dữ liệu sự kiện. Có thể là NULL (RỖNG).
Trả về
event_id_t ID sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì 0.

LogFreeform

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

LogFreeform phát ra một chuỗi tự do cho luồng sự kiện mặc định.

Chuỗi này sẽ được đóng gói trong một cấu trúc sự kiện gỡ lỗi, có cấu trúc giống với các chuỗi đã ghi khác. Mã hồ sơ sự kiện sẽ là mã sự kiện Nest Debug và loại sự kiện sẽ là kNestDebug_StringLogEntryEvent.

Thông tin chi tiết
Các tham số
[in] inImportance
Tầm quan trọng của mục nhập nhật ký; nếu tầm quan trọng giảm xuống dưới tầm quan trọng hiện tại, thì sự kiện đó sẽ không được ghi lại
[in] inFormat
chuỗi định dạng tuân thủ printf, theo sau là các đối số cần định dạng
Trả về
event_id_t ID sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì 0.

LookForElementWithTag

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

Trình thuần văn bản thuần túy

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

Hàm trợ giúp để phát văn bản dạng tự do dưới dạng sự kiện gỡ lỗi.

Sự kiện gỡ lỗi là một cấu trúc có vùng nhật ký và một văn bản dạng tự do.

Thông tin chi tiết
Các tham số
[in,out] ioWriter
Tác giả sẽ viết kịch bản sự kiện
[in] appData
Con trỏ trỏ đến DebugLogContext, cấu trúc chứa định dạng chuỗi, đối số và vùng nhật ký
[in] inDataTag
Một thẻ ngữ cảnh cho TLV mà chúng ta đang viết. Không được sử dụng ở đây, nhưng bắt buộc theo typedef cho EventWriterFunct.
Giá trị trả về
WEAVE_NO_ERROR
Thành công.
other
Các lỗi khác mà mey trả về từ ioWriter.

Trình thuần văn bản thuần túy

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

Hàm trợ giúp để phát văn bản dạng tự do dưới dạng sự kiện gỡ lỗi.

Sự kiện gỡ lỗi là một cấu trúc có vùng nhật ký và một văn bản dạng tự do.

Thông tin chi tiết
Các tham số
[in,out] ioWriter
Tác giả sẽ viết kịch bản sự kiện
[in] inDataTag
Thẻ để phát ra
[in] appData
Con trỏ trỏ đến DebugLogContext, cấu trúc chứa định dạng chuỗi, đối số và vùng nhật ký
Giá trị trả về
WEAVE_NO_ERROR
Thành công.
other
Các lỗi khác có thể được trả về từ ioWriter.

toán tử!=

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

toán tử=

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