nl::Weave::Profiles::DataManagement_Current

Không gian tên này bao gồm tất cả các giao diện trong cấu hình Weave dành cho cấu hình Quản lý dữ liệu của Weave (WDM) hiện được hỗ trợ để sử dụng trong phiên bản chính thức.

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
Thẻ cho các sự kiện duy trì.
@104 enum
Các loại thông báo hồ sơ WDM.
@105 enum
Mã trạng thái cụ thể của WDM.
@147 enum
@95{
  kTag_CurrentImportance = 1,
  kTag_ImportanceExpiration,
  kTag_MinimumLogUploadInterval,
  kTag_MaximumLogUploadInterval,
  kTag_LoggingDestination,
  kTag_TraitLoggingImportance
}
enum
Thẻ Cài đặt ghi nhật ký.
@96{
  kTag_SupportedLogTransports = 1,
  kTag_SupportsStreaming = 2,
  kTag_SupportsNonVolatileStorage = 3,
  kTag_SupportsPerTraitVerbosity = 4,
  kTag_LoggingVolume = 5,
  kTag_LogBufferingCapacity = 6
}
enum
Thẻ về 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 hồ sơ cho trait gỡ lỗi.
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
enum
Các loại sự kiện cho trait Gỡ lỗi Nest.
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
Một nguyên mẫu hàm cho các lệnh gọi lại nền tảng đang 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(*
Biến lặp xử lý trait.
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) typedef
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) typedef
void(*
Một nguyên mẫu hàm cho lệnh gọi lại được gọi khi sự kiện bên ngoài được gửi đến thuê bao từ xa.
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) typedef
void(*
Một nguyên mẫu hàm cho 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
PropertiesPathHandle là một hàm băm số 32 bit duy nhất của đường dẫn WDM tương ứng với gốc của thực thể trait.
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 chuyển một 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à cách triển khai được tối ưu hoá 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 chuyển đổi tuần tự trước.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
Ghi lại một sự kiện từ biểu mẫu chuyển đổi tuần tự trước với các tùy chọn bổ sung.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
Ghi lại 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 lại một sự kiện thông qua lệnh gọi lại, với các lựa chọn.
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
LogFreeform tạo ra một chuỗi dạng tự do tới 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)
Một hàm trợ giúp để chuyển 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)
Một hàm trợ giúp để chuyển 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á tin nhắn WDM.

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

Một TLVReader được hỗ trợ bởi CircularEventBuffer.

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

Weave đã triển khai giao diện TraitCatalogBase cho một tập hợp các thực thể dữ liệu trait 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ý triển khai các phần tử dữ liệu trong NotificationRequest.

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

Giao diện mà ứ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 một đối tượng mutex.

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

Lớp cơ sở cho bộ mã hoá thông báo WDM, chuyên về 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 trình phân tích cú pháp thông báo WDM, chuyên về các phần tử mảng TLV, chẳng hạn như Danh sách dữ liệu và Danh sách phiên bản.

nl::Weave::Profiles::DataManagement_Current::LogBDXUpload
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 phụ Ghi nhật ký sự kiện Weave.

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

Một lớp để 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 tài nguyên.

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

Đây là một singleton lưu trữ tất cả các gói thuê bao WDM Next, cả phía máy khách và phía nhà xuất bản.

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

Công cụ giản đồ sử dụng thông tin giản đồ liên quan đến 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 một dạng 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::UpdateDictionaryDirtyPathCut

Lớp tiện ích dùng để đư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ó phần tử con của từ điển.

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

Đối tượng này mã hoá các tải trọng UpdateRequest và PartialUpdateRequest của WDM.

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 xây dựng 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 tải danh sách sự kiện.

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

Cấu trúc cung cấp độ phân giải đầy đủ của thực thể trait.

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

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

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

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

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

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

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

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

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

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

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

Một lớp trợ giúp được dùng khi 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

Hiệp hội

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

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::BaseMessageWithSubscribeId
nl::Weave::Profiles::DataManagement_Current::CustomCommand

Định nghĩa Lệnh tuỳ chỉnh của WDM.

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

Định nghĩa Phản hồi Command tuỳ 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::Event
nl::Weave::Profiles::DataManagement_Current::EventList
nl::Weave::Profiles::DataManagement_Current::NotificationRequest
nl::Weave::Profiles::DataManagement_Current::Path

Đị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::Platform
nl::Weave::Profiles::DataManagement_Current::RejectionRecord
nl::Weave::Profiles::DataManagement_Current::RejectionRecordList
nl::Weave::Profiles::DataManagement_Current::StatusElement

Định nghĩa Phần tử trạng thái 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

Định nghĩa Yêu cầu cập nhật 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

Bảng liệt kê

@100

 @100

Thẻ cho kNestDebug_StringLogEntryEvent.

Thuộc tính
kTag_Message

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

kTag_Region

Một mô-đun 32 bit chưa có chữ ký cho biết khu vực nhật ký, tức là mô-đun mà thông điệp nhật ký liên quan.

@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

Giá trị 32 bit chưa ký tương ứng với mã thông báo.

@102

 @102

Thẻ cho các sự kiện duy trì.

@104

 @104

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

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

@105

 @105

Mã trạng thái cụ thể của WDM.

@147

 @147

@95

 @95

Thẻ Cài đặt ghi nhật ký.

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 importantType.

kTag_ImportanceExpiration

Thời gian, tính bằng giây UTC khi các chế độ cài đặt ghi nhật ký nâng cao hiện tại chuyển về giá trị mặc định.

kTag_LoggingDestination

URL cho biết đích đến của lượt tải nhật ký lên.

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 không bắt buộc ánh xạ một cách có chọn lọc các hồ sơ đã chọn lên 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,logcatnhập) để nâng cao việc ghi nhật ký một cách có chọn lọc 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 hiện tại Mức độ quan trọng và có cùng thời gian hết hạn với Mức độ quan trọng hiện tại.

@96

 @96

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

Thuộc tính
kTag_LogBufferingCapacity

Một số nguyên 32 bit chưa ký mô tả dung lượng lưu vào bộ đệm nhật ký tính bằng kB.

kTag_LoggingVolume

Một số nguyên 32 bit chưa ký mô tả khối lượng ghi nhật ký dự kiến tính bằng kB/ngày.

kTag_SupportedLogTransports

Một loạt các cơ chế truyền nhật ký được hỗ trợ.

kTag_SupportsNonVolatileStorage

Một giá trị boolean cho biết thiết bị có hỗ trợ bộ nhớ nhật ký bất biến hay không.

kTag_SupportsPerTraitVerbosity

Một giá trị boolean cho biết thiết bị có hỗ trợ chế độ cài đặt độ chi tiết theo từng đặc điểm hay không.

kTag_SupportsStreaming

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

@97

 @97

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

Để biết ngữ nghĩa đầy đủ 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. Chính dữ liệu sự kiện. Nếu trống, mã mặc định sẽ là một 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 mã hoá.

kTag_EventDeltaUTCTime

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

kTag_EventID

Số thứ tự của sự kiện, được biểu thị bằng số lượng 64 bit chưa ký.

Phải tuần tự, các bước nhảy theo trình tự cho biết các sự kiện bị thiếu.

kTag_EventImportance

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

kTag_EventResourceID

Không bắt buộc.

Giá trị này là mã nhận dạng của tài nguyên liên quan đến sự kiện. Khi bị bỏ qua, giá trị này 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 của hệ thống của sự kiện tính bằng mili giây.

kTag_EventTraitInstanceID

Không bắt buộc, thực thể của trait đã tạo ra sự kiện.

kTag_EventTraitProfileID

Bắt buộc. Số nguyên 32 bit chưa ký bằng với ProfileID của trait.

kTag_EventType

Bắt buộc. Số nguyên 16 bit chưa ký bằng wdl.event.id cho loại sự kiện này.

kTag_EventUTCTimestamp

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

kTag_ExternalEventStructure

Thẻ nội bộ cho sự kiện bên ngoài. Tuyệt đối không truyền dữ liệu qua mạng, tuyệt đối không 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 có liên quan đến sự kiện này. Nếu bỏ qua, giá trị sẽ bằng 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ị bỏ qua, giá trị này sẽ bằng giá trị của kTag_Eventmới.

@98

 @98

Định nghĩa hồ sơ cho trait gỡ lỗi.

@99

 @99

Các loại sự kiện cho trait Gỡ lỗi Nest.

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 thông tin tiêu đề được mã hoá.

kNestDebug_TokenizedLogEntryEvent

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

CommandFlags

 CommandFlags
Thuộc tính
kCommandFlag_ActionTimeValid

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

kCommandFlag_ExpiryTimeValid

Thiết lập thời gian hết hạn hợp lệ.

kCommandFlag_InitiationTimeValid

Đặt thời gian bắt đầu hợp lệ.

kCommandFlag_IsOneWay

Đặt khi lệnh một chiều.

kCommandFlag_MustBeVersionValid

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

ImportanceType

 ImportanceType

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

Mức độ quan trọng được dùng làm một cách lọc sự kiện trước khi thực sự được phát vào nhật ký. Sau khi sự kiện được ghi vào nhật ký, chúng tôi không thực hiện thêm quy định nào khác để xoá sự kiện đó khỏi nhật ký. Mức độ quan trọng này dùng để ưu tiên lưu trữ sự kiện. Nếu một sự kiện có tầm quan trọng cao được thêm vào vùng đệm đầy đủ, các sự kiện sẽ được loại bỏ theo thứ tự tầm quan trọng (và độ tuổi) để phù hợp với sự kiện đó. Do đó, 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 vòng.

Thuộc tính
Debug

Tầm quan trọng của việc gỡ lỗi biểu thị các mục nhập nhật ký mà 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ý mức độ quan trọng của việc gỡ lỗi không được tính trong băng thông hoặc hạn mức năng lượng của các thiết bị bị hạn chế. Do đó, bạn chỉ được sử dụng nhật ký này trong một khoảng thời gian giới hạn trong các hệ thống phát hành chính thức.

Info

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

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

Production

Tầm quan trọng của quá trình phát hành biểu thị các mục nhập nhật ký được dùng trong quá trình giám sát và bảo trì liên tục hệ sinh thái Nest.

Trên các thiết bị bị hạn chế, các mục được ghi lại với mức độ quan trọng của Sản xuất phải được tính đến trong hạn mức nguồn và bộ nhớ, vì dự kiến các mục này sẽ luôn được ghi lại và giảm tải khỏi thiết bị.

ProductionCritical

Tầm quan trọng của khâu sản xuất biểu thị những sự kiện có sự mất mát sẽ ảnh hưởng trực tiếp đến các tính năng dành cho khách hàng.

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

LoggingManagementStates

 LoggingManagementStates
Thuộc tính
kLoggingManagementState_Holdoff

Đã hoàn tất việc giảm tải nhật ký; chúng tôi không khởi động lại nhật ký cho đến khi quá trình tạm ngưng kết thúc.

kLoggingManagementState_Idle

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

kLoggingManagementState_InProgress

Đang tiến hành giảm 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.

TimestampType

 TimestampType

Tính hợp lệ và loại dấu thời gian có trong 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)

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

Các hàm thuộc loại này dự kiến sẽ cung cấp phần tử eventData cho hệ thống con ghi nhật ký sự kiện. 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 được gọi bằng một đối tượng nl::Weave::TLV::TLVWriter. Hàm 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à cấu trúc chứa dữ liệu sự kiện. Bản thân dữ liệu sự kiện phải được cấu trúc bằng cách sử dụng thẻ ngữ cảnh.

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

FetchExternalEventsFunct

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

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

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

Con trỏ ngữ cảnh thuộc loại FetchExternalEventsContext. Trong đó bao gồm EventLoadOutContext, với một số biến trợ giúp cho định dạng TLV. Thành phần này cũng bao gồm một con trỏ đến cấu trúc ExternalEvents (Sự kiện bên ngoài) được tạo khi đăng ký lệnh gọi lại. Thao tác này chỉ định phạm vi mã sự kiện cho lệnh gọi lại.

Khi hàm trả về, 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 phải ghi tiêu đề và dữ liệu sự kiện cho người ghi TLV theo đúng định dạng do giao thức EventLogging chỉ định. 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.

Bạn phải truyền tất cả các lỗi TLV lên các 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 tin nhắn đã gửi, tiếp đến 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ó khoảng trống để ghi sự kiện.
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu không có khoảng trống để ghi sự kiện.
WEAVE_NO_ERROR
Khi thành công.
WEAVE_END_OF_TLV
Khi thành công.

GenericTraitSinkCatalog

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

GenericTraitSourceCatalog

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

ImportanceType

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 làm một cách lọc sự kiện trước khi thực sự được phát vào nhật ký. Sau khi sự kiện được ghi vào nhật ký, chúng tôi không thực hiện thêm quy định nào khác để xoá sự kiện đó khỏi nhật ký. Mức độ quan trọng này dùng để ưu tiên lưu trữ sự kiện. Nếu một sự kiện có tầm quan trọng cao được thêm vào vùng đệm đầy đủ, các sự kiện sẽ được loại bỏ theo thứ tự tầm quan trọng (và độ tuổi) để phù hợp với sự kiện đó. Do đó, 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 vòng.

IteratorCallback

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

Biến lặp xử lý trait.

LoggingBufferHandler

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

NotifyExternalEventsDeliveredFunct

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

Một nguyên mẫu hàm cho lệnh gọi lại được gọi khi sự kiện bên ngoài được gửi đến thuê bao từ xa.

Khi các sự kiện bên ngoài được gửi tới một thuê bao từ xa, 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 của mã nhận dạng cuối cùng được gửi và mã của người đăng ký đã nhận được 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 đã phân phối
[in] inLastDeliveredEventID
Mã của 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

NotifyExternalEventsEvictedFunct

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

Một nguyên mẫu hàm cho 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ư đ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 cần 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 cần bị loại

PropertyDictionaryKey

uint16_t PropertyDictionaryKey

PropertyPathHandle

uint32_t PropertyPathHandle

PropertiesPathHandle là một hàm băm số 32 bit duy nhất của đường dẫn WDM tương ứng với gốc của thực thể trait.

Mã này có hai phần:

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

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

  • Mỗi trait đều có không gian xử lý đường dẫn thuộc tính riêng.
  • Mọi đường dẫn đường dẫn con WDM riêng biệt đều sẽ có một PropertiesPathHandle duy nhất tương tự.
  • PropertiesPathHandles được tạo tự động (hiện được thực hiện thủ công) bởi một trình biên dịch trait từ IDL và được biểu thị dưới dạng danh sách liệt kê trong tệp tiêu đề của trait 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ý đường dẫn WDM. Thay vào đó, các hoạt động tương tác của họ với WDM chỉ được tiến hành thông qua những tên người dùng này.
  • Có hai giá trị dành riêng cho tên người dùng đường dẫn có ý nghĩa cụ thể:
    • 0 cho biết tên người dùng là "NULL"
    • 1 cho biết một handle trỏ đến gốc của thực thể trait.

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

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

TraitDataHandle

uint16_t TraitDataHandle

duration_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

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

sInstance

LoggingManagement sInstance

sLogFileName

char sLogFileName[] = "topazlog"

Hàm

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
)

Hàm trợ giúp chuyển một 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
Người viết nội dung được sử dụng để viết nội dung về sự kiện
[in] inDataTag
Thẻ ngữ cảnh cho TLV mà chúng ta đang sao chép. Không được sử dụng ở đây, nhưng được yêu cầu theo typedef cho EventWriterFunct.
[in] appData
Con trỏ tới TLVReader lưu giữ dữ liệu sự kiện được chuyển đổi tuần tự.
Giá trị trả về
WEAVE_NO_ERROR
Khi thành công.
other
Các lỗi khác bị trả về từ 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
)

Đây là cách triển khai được tối ưu hoá 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ụ 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
Ô điều khiển bồn rửa để tra cứu.
[in] aDataSinkCatalog
Danh mục để tìm kiếm.
Trả về
Con trỏ đến TraitUpdatableDataSink; NULL nếu tên người dùng không tồn tại hoặc trỏ đến một 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 chuyển đổi tuần tự trước.

Hàm này ghi lại một sự kiện được biểu thị dưới dạng nl::Weave::TLV::TLVReader. Điều này có nghĩa là dữ liệu trình bày dữ liệu sự kiện đã được chuyển đổi tuần tự trong bộ nhớ dưới nl::Weave::TLV::TLVReader. nl::Weave::TLV::TLVReader cần phải chứa ít nhất một phần tử dữ liệu đơn lẻ, phần tử đó phải là một cấu trúc. Phần tử đầu tiên được đọc từ trình đọc đượ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 thẻ ngữ cảnh sẽ được diễn giải bên trong giản đồ được xác định bằng inProfileID và inEventType. 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ế thẻ này bằng thẻ eventData.

Sự kiện này được ghi lại nếu không quan trọng, sự kiện đó vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu mức độ quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị loại bỏ và hàm trả về 0 dưới dạng mã nhận dạng 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 tuỳ chọn sự kiện mặc định:

  • sự kiện được đánh dấu thời gian với thời gian hiện tại tại thời điểm gọi điện.
  • sự kiện được đánh dấu là liên quan đến thiết bị đang thực hiện cuộc gọi,
  • sự kiện này độc lập, không liên quan đến bất kỳ sự kiện nào khác
  • sự kiện đượ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 dưới dạng phần tử đầu tiên.
Trả về
event_id_t Mã sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì giá trị là 0.

LogEvent

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

Ghi lại một sự kiện từ biểu mẫu chuyển đổi tuần tự trước với các tùy chọn bổ sung.

Hàm này ghi lại một sự kiện được biểu thị dưới dạng nl::Weave::TLV::TLVReader. Điều này có nghĩa là dữ liệu trình bày dữ liệu sự kiện đã được chuyển đổi tuần tự trong bộ nhớ dưới nl::Weave::TLV::TLVReader. nl::Weave::TLV::TLVReader cần phải chứa ít nhất một phần tử dữ liệu đơn lẻ, phần tử đó phải là một cấu trúc. Phần tử đầu tiên được đọc từ trình đọc đượ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 thẻ ngữ cảnh sẽ được diễn giải bên trong giản đồ được xác định bằng inProfileID và inEventType. 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ế thẻ này bằng thẻ eventData.

Sự kiện này được ghi lại nếu không quan trọng, sự kiện đó vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu mức độ quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị loại bỏ và hàm trả về 0 dưới dạng mã nhận dạng 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 EventOptions nào:

  • dấu thời gian, khi giá trị 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,
  • phần "gốc" của nguồn sự kiện (nguồn sự kiện và ID trait); nếu là NULL thì giá trị mặc định sẽ là thiết bị hiện tạ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,
  • 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.
  • tính cấp bách; theo mặc định 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 dưới dạng phần tử đầu tiên. Không được là NULL
[in] inOptions
Các tuỳ chọn cho siêu dữ liệu sự kiện. Có thể là NULL.
Trả về
event_id_t Mã sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì giá trị là 0.

LogEvent

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

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

Hàm này ghi lại một sự kiện được biểu thị dưới dạng EventWriterFunct và 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 tệp tham chiếu nl::Weave::TLV::TLVWriter và ngữ cảnh inAppData để mã người dùng có thể phát dữ liệu sự kiện trực tiếp vào nhật ký sự kiện. Hình thức ghi nhật ký sự kiện này giảm thiểu mức tiêu thụ bộ nhớ, vì dữ liệu sự kiện được chuyển đổi tuần tự trực tiếp vào vùng đệm mục tiêu. Dữ liệu sự kiện PHẢI chứa 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ế thẻ này bằng thẻ eventData.

Sự kiện này được ghi lại nếu không quan trọng, sự kiện đó vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu mức độ quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị loại bỏ và hàm trả về 0 dưới dạng mã nhận dạng 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 tuỳ chọn sự kiện mặc định:

  • sự kiện được đánh dấu thời gian với thời gian hiện tại tại thời điểm gọi điện.
  • sự kiện được đánh dấu là liên quan đến thiết bị đang thực hiện cuộc gọi,
  • sự kiện này độc lập, không liên quan đến bất kỳ sự kiện nào khác
  • sự kiện đượ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 để thực sự 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 Mã sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì giá trị là 0.

LogEvent

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

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

Hàm này ghi lại một sự kiện được biểu thị dưới dạng EventWriterFunct và 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 tệp tham chiếu nl::Weave::TLV::TLVWriter và ngữ cảnh inAppData để mã người dùng có thể phát dữ liệu sự kiện trực tiếp vào nhật ký sự kiện. Hình thức ghi nhật ký sự kiện này giảm thiểu mức tiêu thụ bộ nhớ, vì dữ liệu sự kiện được chuyển đổi tuần tự trực tiếp vào vùng đệm mục tiêu. Dữ liệu sự kiện PHẢI chứa 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ế thẻ này bằng thẻ eventData.

Sự kiện này được ghi lại nếu không quan trọng, sự kiện đó vượt quá ngưỡng ghi nhật ký được chỉ định trong LoggingConfiguration. Nếu mức độ quan trọng của sự kiện không đáp ứng ngưỡng hiện tại, thì sự kiện đó sẽ bị loại bỏ và hàm trả về 0 dưới dạng mã nhận dạng 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 EventOptions nào:

  • dấu thời gian, khi giá trị 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,
  • phần "gốc" của nguồn sự kiện (nguồn sự kiện và ID trait); nếu là NULL thì giá trị mặc định sẽ là thiết bị hiện tạ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,
  • 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.
  • tính cấp bách; theo mặc định 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 để thực sự 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 tuỳ chọn cho siêu dữ liệu sự kiện. Có thể là NULL.
Trả về
event_id_t Mã sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì giá trị là 0.

LogFreeform

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

LogFreeform tạo ra một chuỗi dạng tự do tới luồng sự kiện mặc định.

Chuỗi này sẽ được đóng gói trong cấu trúc sự kiện gỡ lỗi, có cấu trúc giống với các chuỗi được ghi lại khác. Mã hồ sơ sự kiện sẽ là mã của sự kiện Gỡ lỗi Nest 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 mức độ quan trọng giảm xuống dưới mức độ quan trọng hiện tại, sự kiện sẽ không thực sự đượ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 Mã sự kiện nếu sự kiện được ghi vào nhật ký, nếu không thì giá trị là 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
)

Một hàm trợ giúp để chuyển 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ó một 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
Người viết nội dung được sử dụng để viết nội dung về sự kiện
[in] appData
Con trỏ đến DebugLogContext, một cấu trúc chứa định dạng chuỗi, đối số và vùng nhật ký
[in] inDataTag
Thẻ ngữ cảnh cho TLV mà chúng ta đang viết. Không được sử dụng ở đây, nhưng được yêu cầu theo typedef cho EventWriterFunct.
Giá trị trả về
WEAVE_NO_ERROR
Khi thành công.
other
Các lỗi khác bị trả về từ ioWriter.

PlainTextWriter

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

Một hàm trợ giúp để chuyển 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ó một 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
Người viết nội dung được sử dụng để viết nội dung về sự kiện
[in] inDataTag
Thẻ cần phát
[in] appData
Con trỏ đến DebugLogContext, một 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
Khi 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
)