nl::Weave::Profiles::DataManagement_Current

Bu ad alanı, Weave Veri Yönetimi (WDM) profili için şu anda üretim kullanımı için desteklenen Weave içindeki tüm arayüzleri içerir.

Özet

Sıralamalar

@100{
  kTag_Region = 1,
  kTag_Message = 2
}
enum
kNestDebug_StringLogEntryEvent için etiketler.
@101{
  kTag_Token = 1,
  kTag_Args = 2
}
enum
kNestDebug_TokenizedLogEntryEvent için etiketler.
@102 enum
Kalıcı etkinlikler için etiketler.
@104 enum
WDM profili mesaj türleri.
@105 enum
WDM'ye özel durum kodları.
@147 enum
@95{
  kTag_CurrentImportance = 1,
  kTag_ImportanceExpiration,
  kTag_MinimumLogUploadInterval,
  kTag_MaximumLogUploadInterval,
  kTag_LoggingDestination,
  kTag_TraitLoggingImportance
}
enum
Günlük Ayarları etiketleri.
@96{
  kTag_SupportedLogTransports = 1,
  kTag_SupportsStreaming = 2,
  kTag_SupportsNonVolatileStorage = 3,
  kTag_SupportsPerTraitVerbosity = 4,
  kTag_LoggingVolume = 5,
  kTag_LogBufferingCapacity = 6
}
enum
Günlük kaydı özellikleri için etiketler.
@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
Etkinlik meta verileri için etiketler.
@98 enum
Hata ayıklama özelliği için profil tanımları.
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
enum
Nest Hata Ayıklama özelliğinin etkinlik türleri.
CommandFlags{
  kCommandFlag_MustBeVersionValid = 0x0001,
  kCommandFlag_InitiationTimeValid = 0x0002,
  kCommandFlag_ActionTimeValid = 0x0004,
  kCommandFlag_ExpiryTimeValid = 0x0008,
  kCommandFlag_IsOneWay = 0x0010
}
enum
ImportanceType{
  ProductionCritical = 1,
  Production,
  Info,
  Debug
}
enum
Günlük girişinin önemi.
LoggingManagementStates{
  kLoggingManagementState_Idle = 1,
  kLoggingManagementState_InProgress = 2,
  kLoggingManagementState_Holdoff = 3,
  kLoggingManagementState_Shutdown = 4
}
enum
TimestampType enum
EventOptions'a eklenen zaman damgasının geçerliliği ve türü.

Türdefler

CommandFlags typedef
DataVersion typedef
uint64_t
EventProcessor typedef
void *
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData) typedef
Etkinlik günlük kaydı alt sistemi için eventData öğesini sağlayan bir işlev.
FetchExternalEventsFunct)(EventLoadOutContext *aContext) typedef
Etkinlik verilerini getiren platform geri çağırmaları için bir işlev prototipi.
GenericTraitSinkCatalog typedef
GenericTraitSourceCatalog typedef
ImportanceType typedef
Günlük girişinin önemi.
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext) typedef
void(*
Özellik işleyici yineleyici.
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) typedef
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) typedef
void(*
Uzak aboneye harici etkinlikler yayınlandığında çağrılan bir geri çağırma için işlev prototipi.
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) typedef
void(*
Harici etkinlikler arabelleklerden çıkarıldığında çağrılan bir geri çağırma için işlev prototipi.
PropertyDictionaryKey typedef
uint16_t
PropertyPathHandle typedef
uint32_t
PropertyPathHandle, bir özellik örneğinin köküne göre bir WDM yolunun benzersiz 32 bit sayısal karmasıdır.
PropertySchemaHandle typedef
uint16_t
SchemaVersion typedef
uint16_t
SingleResourceSinkTraitCatalog typedef
SingleResourceSourceTraitCatalog typedef
TimestampType typedef
EventOptions'a eklenen zaman damgasının geçerliliği ve türü.
TraitDataHandle typedef
uint16_t
duration_t nl::Weave::Profiles::DataManagement_Current::duration_t
uint32_t
Milisaniye cinsinden süreyi açıklamak için kullanılan tür.
event_id_t nl::Weave::Profiles::DataManagement_Current::event_id_t
uint32_t
Etkinlik kimliğinin türü.
timestamp_t nl::Weave::Profiles::DataManagement_Current::timestamp_t
uint32_t
Zaman damgasını milisaniye cinsinden açıklamak için kullanılan tür.
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::utc_timestamp_t
uint64_t
UTC zaman damgasını milisaniye cinsinden açıklamak için kullanılan tür.

Değişkenler

sInstance
sLogFileName = "topazlog"[]
char

İşlevler

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)
Serileştirilmiş bir eventdata öğesini etkinlik arabelleğine dönüştüren bir yardımcı işlev.
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
PropertyDictionaryKey
GetPropertySchemaHandle(PropertyPathHandle aHandle)
PropertySchemaHandle
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
bool
Bu, sürümleri karşılaştırmak için algoritmanın optimize edilmiş bir uygulamasıdır.
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
bool
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
TraitDataSink kataloğunda bir TraitUpdatableDataSink bulan yardımcı program işlevi.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
Önceden serileştirilmiş formdaki bir etkinliği günlüğe kaydedin.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
Önceden serileştirilmiş formdan ek seçeneklerle birlikte bir etkinliği günlüğe kaydedin.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
Bir geri çağırma aracılığıyla etkinliği günlüğe kaydedin.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
Seçenekleri içeren bir geri çağırma aracılığıyla etkinliği günlüğe kaydedin.
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
LogFreeform, varsayılan etkinlik akışına serbest biçimli bir dize yayar.
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Hata ayıklama etkinliği olarak serbest biçimli metin yayınlamak için yardımcı bir işlev.
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
Hata ayıklama etkinliği olarak serbest biçimli metin yayınlamak için yardımcı bir işlev.
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool

Sınıflar

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

WDM mesaj kodlayıcıları için temel sınıf.

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

CircularEventBuffer tarafından desteklenen bir TLVReader.

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

Weave, hepsi aynı kaynağa başvuran özellik verisi örnekleri koleksiyonu için TraitCatalogBase arayüzünün uygulamasını sağladı.

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

BildirRequest'teki veri öğelerinin işleyeni tarafından uygulanacak arayüz.

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

Önemli WDM veri yapılarına erişimi serileştirmek için uygulama tarafından uygulanacak arayüz.

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

karşılıklı dışlama nesnesi arayüzü.

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

Veri Listeleri ve Sürüm Listeleri gibi TLV dizisi öğelerinde uzmanlaşmış, WDM mesaj kodlayıcıları için temel sınıf.

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

Veri Listeleri ve Sürüm Listeleri gibi TLV dizisi öğelerinde uzmanlaşmış, WDM mesaj ayrıştırıcıları için temel sınıf.

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

LoggingConfiguration, Weave Event Logging alt sisteminin yapılandırılabilir bileşenini içerir.

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

Bellek içi etkinlik günlüklerini yönetmek için bir sınıf.

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

WDM mesaj ayrıştırıcılar için temel sınıf.

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

Bir kaynağın kimliğini içeren yapı.

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

Bu, hem istemci hem de yayıncı tarafları dahil tüm WDM Next aboneliklerini barındıran bir single'dır.

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

Şema motoru, belirli bir özellikle ilişkili şema bilgilerini alır ve bu bilgileri, ayrıştırarak WDM makinesi tarafından kullanılabilecek bir biçime dönüştürme olanağı sağlar.

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

Sözlük alt öğesine sahip özellik yolu işlenirken sözlüğü tekrar bekleme sırasına almak için yardımcı program sınıfı.

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

Bildirimi işlerken yolu filtrelemek için yardımcı program sınıfı.

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

Bu nesne, WDM UpdateRequest ve KısmiUpdateRequest yüklerini kodlar.

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

Yapılar

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

nl::Weave::TLV::WeaveCircularTLVBuffer temel alınarak oluşturulan dahili etkinlik arabelleği.

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

Etkinlik listesi arasında geçiş için dahili yapı.

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

Özellik örneğinin tam çözünürlüğünü sağlayan yapı.

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

Etkinliklerin geçişi için dahili yapı.

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

Çıkışta etkinlik listelerini kopyalama yapısı.

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

Farklı etkinlik alanları için seçenekler sağlayan yapı.

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

Etkinlik meta verileri için bir şema tanımlayan yapı.

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

Platformda depolanan etkinlikleri izleme yapısı.

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

Günlük kaydı yönetimini başlatmada kullanılan yardımcı sınıf.

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

Birlikler

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

Uygulama grubu sistemi veya UTC zaman damgası sağlayan birleşim.

Ad alanları

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

WDM Özel Komut tanımı.

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

WDM Özel Komut Yanıtı tanımı.

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

WDM Veri Öğesi tanımı.

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 Yol tanımı.

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

WDM Yol Listesi'nin tanımı.

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 Durum Öğesi tanımı.

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 Güncelleme İsteğinin tanımı.

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

Sıralamalar

@100

 @100

kNestDebug_StringLogEntryEvent için etiketler.

Özellikler
kTag_Message

Gerçek hata ayıklama mesajını içeren bir dize.

kTag_Region

Günlük bölgesini (ör. günlük mesajının ait olduğu modülü) gösteren 32 bitlik imzasız.

@101

 @101

kNestDebug_TokenizedLogEntryEvent için etiketler.

Özellikler
kTag_Args

Jeton mesajıyla birlikte gönderilecek bir bağımsız değişken dizisi.

kTag_Token

Jetona karşılık gelen 32 bitlik imzalanmamış bir değer.

@102

 @102

Kalıcı etkinlikler için etiketler.

@104

 @104

WDM profili mesaj türleri.

Bu değerler veri yönetimi spesifikasyonunda belirtilmiştir.

@105

 @105

WDM'ye özel durum kodları.

@147

 @147

@95

 @95

Günlük Ayarları etiketleri.

Özellikler
kTag_CurrentImportance

Günlük kaydının şu anki önem derecesi. Değer ImportanceType türündedir.

kTag_ImportanceExpiration

Mevcut yükseltilmiş günlük kaydı ayarlarının varsayılan değerlere döneceği zaman (UTC saniye cinsinden).

kTag_LoggingDestination

Günlük yükleme işleminin hedefini belirten bir URL.

kTag_MaximumLogUploadInterval

Otomatik olarak tetiklenen günlük yükleme denemeleri arasındaki saniye cinsinden maksimum süre.

kTag_MinimumLogUploadInterval

Otomatik olarak tetiklenen günlük yükleme denemeleri arasındaki minimum süre (saniye cinsinden).

kTag_TraitLoggingImportance

Seçilen profilleri seçerek daha yüksek günlük kaydı düzeylerine eşleyen isteğe bağlı bir dizi.

Dizideki her öğe, sistemin bir alt kümesinden günlük kaydını seçmeli olarak yükseltmek için bir biçim (profil, yol,loggingönemi) alır. Yükseltilmiş profil günlük kaydı önceliği, yalnızca günlük kaydı önceliği mevcutÖnemin değerini aştığında ve currentValueance ile aynı son kullanma süresine tabi olduğunda önem taşır.

@96

 @96

Günlük kaydı özellikleri için etiketler.

Özellikler
kTag_LogBufferingCapacity

Günlük arabelleğe alma kapasitesini kB cinsinden açıklayan 32 bitlik imzasız tam sayı.

kTag_LoggingVolume

Beklenen günlük kaydı hacmini kB/gün cinsinden açıklayan 32 bitlik imzasız tam sayı.

kTag_SupportedLogTransports

Desteklenen günlük taşıma mekanizmaları dizisi.

kTag_SupportsNonVolatileStorage

Cihazın kalıcı günlük depolamayı destekleyip desteklemediğini gösteren boole değeri.

kTag_SupportsPerTraitVerbosity

Cihazın özellik başına ayrıntı ayarlarını destekleyip desteklemediğini gösteren boole değeri.

kTag_SupportsStreaming

Cihazın akış günlüklerini destekleyip desteklemediğini gösteren boole değeri.

@97

 @97

Etkinlik meta verileri için etiketler.

Etiket değerlerinin tüm anlamlarını öğrenmek için Etkinlik Tasarımı Spesifikasyonu'na bakın.

Özellikler
kTag_EventData

İsteğe bağlı. Etkinlik verilerinin kendisi. Boş bırakılırsa varsayılan olarak boş bir yapı olur.

kTag_EventDeltaSystemTime

WDM dahili etiketi; kodlamada önceki etkinlikten saat farkı.

kTag_EventDeltaUTCTime

WDM dahili etiketi; kodlamada önceki etkinlikten saat farkı.

kTag_EventID

64 bit imzasız miktar olarak ifade edilen etkinlik sıra numarası.

Sıralı olmalıdır. Dizideki atlamalar etkinlik boşluklarını belirtir.

kTag_EventImportance

Etkinliğin önemi.

kTag_EventResourceID

İsteğe bağlı.

Değer, etkinliğin ait olduğu kaynağın kimliğidir. Atlandığında, değer kTag_EventSource'un değeriyle aynı olur

kTag_EventSource

Etkinliği oluşturan cihazın NodeID.

kTag_EventSystemTimestamp

İsteğe bağlı. Etkinliğin sistem Zaman damgası (milisaniye).

kTag_EventTraitInstanceID

İsteğe bağlı, etkinliği oluşturan özelliğin örneği.

kTag_EventTraitProfileID

Zorunlu. Özelliğin ProfileID değerine eşit olan 32 bitlik imzasız tam sayı.

kTag_EventType

Zorunlu. Bu etkinlik türü için wdl.event.id değerine eşit olan 16 bitlik imzasız tam sayı.

kTag_EventUTCTimestamp

İsteğe bağlı. Etkinliğin UTC Zaman damgası (milisaniye cinsinden).

kTag_ExternalEventStructure

Harici etkinlikler için dahili etiket. Hiçbir zaman kablo üzerinden iletilmez, hiçbir zaman Weave kitaplığının dışında kullanılmamalıdır.

kTag_RelatedEventID

İsteğe bağlı.

Bu etkinliğin ilişkili olduğu bir Etkinliğin kimliği. Atlanırsa değer kTag_EventID değerine eşit olur.

kTag_RelatedEventImportance

İsteğe bağlı.

İlgili etkinliğin önemi. Atlanırsa değer kTag_EventImportance değerine eşit olur.

@98

 @98

Hata ayıklama özelliği için profil tanımları.

@99

 @99

Nest Hata Ayıklama özelliğinin etkinlik türleri.

Özellikler
kNestDebug_StringLogEntryEvent

Serbest biçimli dize hata ayıklama mesajı etkinliği.

kNestDebug_TokenizedHeaderEntryEvent

Token atanmış başlık bilgilerini aktarmak için bir etkinlik.

kNestDebug_TokenizedLogEntryEvent

Jetonlu hata ayıklama mesajı etkinliği.

CommandFlags

 CommandFlags
Özellikler
kCommandFlag_ActionTimeValid

İşlem zamanının ne zaman geçerli olacağını ayarlayın.

kCommandFlag_ExpiryTimeValid

Geçerlilik süresinin ne zaman geçerli olacağını ayarlayın.

kCommandFlag_InitiationTimeValid

Başlatma zamanının ne zaman geçerli olacağını ayarlayın.

kCommandFlag_IsOneWay

Komut tek yönlü olacak şekilde ayarlayın.

kCommandFlag_MustBeVersionValid

Sürüm alanının ne zaman geçerli olacağını ayarlayın.

ImportanceType

 ImportanceType

Günlük girişinin önemi.

Önem, günlüğe gerçekten yansıtılmadan önce etkinlikleri filtreleme yöntemi olarak kullanılır. Etkinlik günlüğe kaydedildikten sonra, onu günlükten kalıcı olarak silmek için başka bir temel hazırlık yapılmaz. Önem düzeyi, etkinlik depolama alanına öncelik verilmesini sağlar. Tam arabelleğe çok önemli bir etkinlik eklenirse etkinlikler, bu duruma uyum sağlamak için önem (ve yaş) sırasına göre atlanır. Bu nedenle, önem düzeylerinde yalnızca göreli değerler bulunur. Bir sistemde yalnızca bir önem düzeyi kullanılıyorsa etkinlikler yalnızca yaş sırasına göre atlanır (ör. halka arabelleği).

Özellikler
Debug

Hata ayıklamanın önem derecesi, sistemin geliştiricilerinin ilgilendiği günlük girişlerini gösterir ve öncelikli olarak geliştirme aşamasında kullanılır.

Hata ayıklama önem günlükleri, kısıtlı cihazların bant genişliği veya güç bütçelerinde hesaba katılmaz. Bu nedenle, üretim sistemlerinde yalnızca sınırlı bir süre boyunca kullanılmalıdır.

Info

Bilgi önem derecesi, çalışan sisteme ek analiz ve teşhis sağlayan günlük girişlerini gösterir.

Bilgi günlük kaydı düzeyi, bir üretim sisteminde uzun süre veya bir saha denemesinde varsayılan günlük düzeyi olarak kullanılabilir. Kısıtlı cihazlarda Bilgi düzeyi ile günlüğe kaydedilen girişler, bant genişliği ve bellek bütçesinde hesaba katılmalı, güç bütçesinde hesaba katılmamalıdır.

Production

Üretimin önemi, Nest ekosisteminin devam eden izleme ve bakımı sırasında kullanılan günlük girişlerini ifade eder.

Kısıtlı cihazlarda, Üretim önem derecesi ile günlüğe kaydedilen girişler güç ve bellek bütçesine dahil edilmelidir. Çünkü bu girişlerin her zaman günlüğe kaydedilmesi ve cihazdan çıkarılması beklenir.

ProductionCritical

Üretim Kritik önem, kaybı müşterinin karşılaştığı özellikleri doğrudan etkileyecek olayları ifade eder.

Uygulamalar, sistem hatasını göstermek için Üretimde Kritik öneme sahip etkinliklerin kaybını kullanabilir. Kısıtlı cihazlarda, Üretim Kritik önem derecesi ile günlüğe kaydedilen girişler güç ve bellek bütçesine dahil edilmelidir. Çünkü bu girişlerin her zaman günlüğe kaydedilmesi ve cihazdan çıkarılması beklenir.

LoggingManagementStates

 LoggingManagementStates
Özellikler
kLoggingManagementState_Holdoff

Günlük boşaltma tamamlandı. Bekleme süresi sona erene kadar günlük kaydını yeniden başlatmıyoruz.

kLoggingManagementState_Idle

Devam eden bir günlük boşaltma işlemi yok, günlük boşaltma herhangi bir kısıtlama olmadan başlayabilir.

kLoggingManagementState_InProgress

Günlük boşaltma işlemi devam ediyor.

kLoggingManagementState_Shutdown

Herhangi bir günlük kaydı işlemi gerçekleştiremez.

TimestampType

 TimestampType

EventOptions'a eklenen zaman damgasının geçerliliği ve türü.

Türdefler

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)

Etkinlik günlük kaydı alt sistemi için eventData öğesini sağlayan bir işlev.

Bu tür işlevlerin, etkinlik günlük kaydı alt sistemi için eventData öğesini sağlaması beklenir. Bu tür işlevler, etkinlik alt sistemi gerekli tüm etkinlik meta verilerini oluşturduktan sonra çağrılır. İşlev, bir nl::Weave::TLV::TLVWriter nesnesiyle çağrılır ve kTag_EventData etiketli tek bir TLV öğesi oluşturur. Bu öğenin değeri, etkinlik verilerini içeren bir yapı OLMALIDIR. Etkinlik verilerinin kendisi bağlam etiketleri kullanılarak yapılandırılmalıdır.

Ayrıntılar
Parametreler
[in,out] ioWriter
Etkinlik verilerini serileştirme işlemi için kullanılacak nl::Weave::TLV::TLVWriter nesnesine başvuru.
[in] inDataTag
Hazırladığımız TLV için bir bağlam etiketi.
[in] appData
Uygulamaya özel bir bağlam için işaretçi.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı olun.
other
Arayana, etkinlik verilerinin serileştirilmesinin tamamlanamadığını bildiren uygun bir hata. ioWriter çağrılarına yapılan hatalar, yeniden eşleme yapılmadan yayılmalıdır. İşlev herhangi bir hata döndürürse etkinlik oluşturma iptal edilir ve etkinlik günlüğe yazılmaz.
Şu makaleyi de inceleyebilirsiniz:
PlainTextWriter
EventWriterTLVCopy

FetchExternalEventsFunct

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

Etkinlik verilerini getiren platform geri çağırmaları için bir işlev prototipi.

FetchEventsEvents'e benzer bir şekilde, bu getirme işlevi ExternalEvents.mLastEventID aracılığıyla EventLoadOutContext.mInitialEventID etkinliklerini döndürür.

Bağlam işaretçisi FetchExternalEventsContext türündedir. Buna TLV biçimi için bazı yardımcı değişkenlerle birlikte EventLoadOutContext de dahildir. Ayrıca, geri çağırmanın kaydında oluşturulan ExternalEvents yapısına yönelik bir işaretçi de içerir. Bu, geri çağırma için etkinlik kimliği aralığını belirtir.

İşlevden dönüldüğünde, EventLoadOutContext.mCurrentEventID, TLV arabelleğine başarıyla yazılmamış ilk etkinlik kimliğini yansıtmalıdır. Platform, etkinlik başlığını ve verileri TLV yazıcısına EventLogging protokolü tarafından belirtilen doğru biçimde yazmalıdır. Platform, etkinliklerin ve zaman damgalarının da benzersizliğini korumalıdır.

Tüm TLV hataları daha yüksek seviyelere yayılmalıdır. Örneğin, arabellekte boş alan kalmadığında önce gönderilen bir mesaj tetiklenir, ardından geri çağırma işleminde kalan etkinlik kimliği kalan başka bir çağrı tetiklenir.

Ayrıntılar
Döndürülen Değerler
WEAVE_ERROR_NO_MEMORY
Etkinlikleri yazmak için alan yoksa.
WEAVE_ERROR_BUFFER_TOO_SMALL
Etkinlikleri yazmak için alan yoksa.
WEAVE_NO_ERROR
Başarılı olun.
WEAVE_END_OF_TLV
Başarılı olun.

GenericTraitSinkCatalog

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

GenericTraitSourceCatalog

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

ImportanceType

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

Günlük girişinin önemi.

Önem, günlüğe gerçekten yansıtılmadan önce etkinlikleri filtreleme yöntemi olarak kullanılır. Etkinlik günlüğe kaydedildikten sonra, onu günlükten kalıcı olarak silmek için başka bir temel hazırlık yapılmaz. Önem düzeyi, etkinlik depolama alanına öncelik verilmesini sağlar. Tam arabelleğe çok önemli bir etkinlik eklenirse etkinlikler, bu duruma uyum sağlamak için önem (ve yaş) sırasına göre atlanır. Bu nedenle, önem düzeylerinde yalnızca göreli değerler bulunur. Bir sistemde yalnızca bir önem düzeyi kullanılıyorsa etkinlikler yalnızca yaş sırasına göre atlanır (ör. halka arabelleği).

IteratorCallback

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

Özellik işleyici yineleyici.

LoggingBufferHandler

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

NotifyExternalEventsDeliveredFunct

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

Uzak aboneye harici etkinlikler yayınlandığında çağrılan bir geri çağırma için işlev prototipi.

Harici etkinlikler uzak bir aboneye iletildiğinde motor, harici etkinlik sağlayıcıya bir bildirim gönderir. Geri çağırma, iletilen son kimliğin etkinliğini ve etkinliği alan abonenin kimliğini içerir.

Ayrıntılar
Parametreler
[in] inEv
Yayınlanan etkinliklere karşılık gelen harici etkinlikler nesnesi
[in] inLastDeliveredEventID
Aboneye teslim edilen son etkinliğin kimliği.
[in] inRecipientNodeID
Alıcının düğüm kimliğini örgü

NotifyExternalEventsEvictedFunct

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

Harici etkinlikler arabelleklerden çıkarıldığında çağrılan bir geri çağırma için işlev prototipi.

Harici etkinlik nesnesi giden ileti arabelleğinden çıkarıldığında motor, harici etkinlik sağlayıcıya bir bildirim gönderir. Geri çağırma, çıkarılacak harici etkinliği içerir.

Ayrıntılar
Parametreler
[in] inEv
Çıkarılacak harici etkinlik nesnesi

PropertyDictionaryKey

uint16_t PropertyDictionaryKey

PropertyPathHandle

uint32_t PropertyPathHandle

PropertyPathHandle, bir özellik örneğinin köküne göre bir WDM yolunun benzersiz 32 bit sayısal karmasıdır.

İki bölümden oluşur:

  • Şemanın statik kısmıyla eşleşen daha düşük bir 16 bit sayı.
  • Alttaki 16 bit bir sözlük öğesi içindeki yolu ifade ederken, bu öğeyle ilişkili sözlük anahtarını temsil eden 16 bitlik bir büyük sayı mevcuttur. Alttaki 16 bit sözlük olmayan bir öğeye işaret ediyorsa üst 16 bit 0 olmalıdır.

Bazı özellikler:

  • Her özelliğin kendi mülk yolu tutma alanı vardır.
  • Her benzersiz WDM alt yol yolunun, benzer şekilde benzersiz bir PropertyPathHandle olacaktır.
  • PropertyPathHandles, IDL'den bir özellik derleyicisi tarafından otomatik olarak oluşturulur (şimdilik elle yapılır) ve ilgili özelliğin başlık dosyasında enumerant listesi olarak temsil edilir.
  • Bu yapıyla uygulama mantığının hiçbir zaman WDM yollarıyla doğrudan ilgilenmesi gerekmez. Bunun yerine, kullanıcıların WDM ile etkileşimleri yalnızca bu herkese açık kullanıcı adları üzerinden yürütülür.
  • Yol herkese açık kullanıcı adları için belirli bir anlamı olan iki ayrılmış değer vardır:
    • 0, "NULL" herkese açık kullanıcı adını belirtir
    • 1, özellik örneğinin kökünü işaret eden bir herkese açık kullanıcı adını belirtir.

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'a eklenen zaman damgasının geçerliliği ve türü.

TraitDataHandle

uint16_t TraitDataHandle

duration_t

uint32_t duration_t

Milisaniye cinsinden süreyi açıklamak için kullanılan tür.

event_id_t

uint32_t event_id_t

Etkinlik kimliğinin türü.

timestamp_t

uint32_t timestamp_t

Zaman damgasını milisaniye cinsinden açıklamak için kullanılan tür.

utc_timestamp_t

uint64_t utc_timestamp_t

UTC zaman damgasını milisaniye cinsinden açıklamak için kullanılan tür.

Değişkenler

sInstance

LoggingManagement sInstance

sLogFileName

char sLogFileName[] = "topazlog"

İşlevler

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
)

Serileştirilmiş bir eventdata öğesini etkinlik arabelleğine dönüştüren bir yardımcı işlev.

Ayrıntılar
Parametreler
[in,out] ioWriter
Etkinliği yazmak için kullanılacak yazar
[in] inDataTag
Kopyaladığımız TLV için bir bağlam etiketi. Burada kullanılmaz ancak EventWriterFunct için typedef tarafından zorunlu tutulur.
[in] appData
Serileştirilmiş etkinlik verilerini barındıran TLVReader işaretçisi.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı olun.
other
ioWriter tarafından döndürülecek diğer hatalar.

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
)

Bu, sürümleri karşılaştırmak için algoritmanın optimize edilmiş bir uygulamasıdır.

İstemci tarafında, hizmetten alınan sürüm her zaman en yeni sürümdür.

IsVersionNewerOrEqual

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

Yerini bul

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

TraitDataSink kataloğunda bir TraitUpdatableDataSink bulan yardımcı program işlevi.

Ayrıntılar
Parametreler
[in] aTraitDataHandle
Aramak için Lavabo'nun tutma yeri.
[in] aDataSinkCatalog
Aranacak katalog.
İadeler
TraitUpdatableDataSink işaretçisi; herkese açık kullanıcı adı yoksa veya güncellenemez bir TraitDataSink'e işaret ediyorsa NULL değeri.

LogEvent

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

Önceden serileştirilmiş formdaki bir etkinliği günlüğe kaydedin.

İşlev, nl::Weave::TLV::TLVReader olarak temsil edilen bir etkinliği günlüğe kaydeder. Bu, etkinlik verileri temsilinin, nl::Weave::TLV::TLVReader öğesinin altındaki depolama alanında serileştirilmiş olduğu anlamına gelir. nl::Weave::TLV::TLVReader öğesinin en az tek bir veri öğesi içermesi beklenir. Bu öğe bir yapı olmalıdır. Okuyucudan okunan ilk öğe, etkinlik verisi olarak değerlendirilir ve olay günlüğünde depolanır. Etkinlik verileri, inProfileID ve inEventType tarafından tanımlanan şema içinde yorumlanacak bağlam etiketlerini İÇERMELİDİR. İlk öğenin etiketi yoksayılır. Etkinlik günlük kaydı sistemi, bunu eventData etiketiyle değiştirir.

Etkinliğin önemi LoggingConfiguration'da belirtilen günlük kaydı eşiğini aşarsa etkinlik günlüğe kaydedilir. Etkinliğin önemi, mevcut eşiği karşılamıyorsa etkinlik iptal edilir ve işlev, sonuç olarak elde edilen etkinlik kimliği olarak bir 0 döndürür.

Çağrının bu varyantı, tüm varsayılan etkinlik seçeneklerini dolaylı olarak belirtir:

  • etkinliğin zaman damgası, çağrı noktasındaki geçerli saati içerir.
  • Olay, aramayı yapan cihazla ilgili olarak işaretlenirse
  • Etkinlik bağımsız olmalı, diğer etkinliklerle ilişkili olmamalıdır.
  • Etkinlik acil değil olarak işaretlenirse

Ayrıntılar
Parametreler
[in] inSchema
Bu etkinliğin önemini, profil kimliğini ve yapı türünü tanımlayan şema.
[in] inData
İlk öğe olarak etkinlik verilerini içeren TLV okuyucusu.
İadeler
event_id_t Etkinlik, günlüğe yazıldıysa etkinlik kimliği; aksi takdirde 0 değerini alır.

LogEvent

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

Önceden serileştirilmiş formdan ek seçeneklerle birlikte bir etkinliği günlüğe kaydedin.

İşlev, nl::Weave::TLV::TLVReader olarak temsil edilen bir etkinliği günlüğe kaydeder. Bu, etkinlik verileri temsilinin, nl::Weave::TLV::TLVReader öğesinin altındaki depolama alanında serileştirilmiş olduğu anlamına gelir. nl::Weave::TLV::TLVReader öğesinin en az tek bir veri öğesi içermesi beklenir. Bu öğe bir yapı olmalıdır. Okuyucudan okunan ilk öğe, etkinlik verisi olarak değerlendirilir ve olay günlüğünde depolanır. Etkinlik verileri, inProfileID ve inEventType tarafından tanımlanan şema içinde yorumlanacak bağlam etiketlerini İÇERMELİDİR. İlk öğenin etiketi yoksayılır. Etkinlik günlük kaydı sistemi, bunu eventData etiketiyle değiştirir.

Etkinliğin önemi LoggingConfiguration'da belirtilen günlük kaydı eşiğini aşarsa etkinlik günlüğe kaydedilir. Etkinliğin önemi, mevcut eşiği karşılamıyorsa etkinlik iptal edilir ve işlev, sonuç olarak elde edilen etkinlik kimliği olarak bir 0 döndürür.

Çağrının bu varyantı, arayanın herhangi bir EventOptions kombinasyonunu ayarlamasına izin verir:

  • zaman damgası, 0 varsayılan olarak çağrı noktasındaki geçerli saati ayarlar
  • Etkinlik kaynağının "root" bölümü (etkinlik kaynağı ve özellik kimliği); NULL değeri varsa varsayılan olarak geçerli cihaz olur. Etkinlik, çağrıyı yapan cihazla ilgili olarak işaretlenir.
  • Etkinlik kimliklerini gruplandırmak için ilgili etkinlik kimliği. İlgili etkinlik kimliği 0 olduğunda etkinlik başka herhangi bir etkinlikle alakalı değil olarak işaretlenir.
  • aciliyet; varsayılan olarak acil değildir.

Ayrıntılar
Parametreler
[in] inSchema
Bu etkinliğin önemini, profil kimliğini ve yapı türünü tanımlayan şema.
[in] inData
İlk öğe olarak etkinlik verilerini içeren TLV okuyucusu. NULL olmamalıdır
[in] inOptions
Etkinlik meta verileri ile ilgili seçenekler. BOŞ olabilir.
İadeler
event_id_t Etkinlik, günlüğe yazıldıysa etkinlik kimliği; aksi takdirde 0 değerini alır.

LogEvent

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

Bir geri çağırma aracılığıyla etkinliği günlüğe kaydedin.

İşlev, EventWriterFunct olarak temsil edilen bir etkinliği ve uygulamaya özgü appData bağlamını günlüğe kaydeder. İşlev, etkinlik meta verilerini yazar ve kullanıcı kodunun etkinlik verilerini doğrudan etkinlik günlüğüne yayınlayabilmesi için inEventWriter öğesini bir nl::Weave::TLV::TLVWriter referansı ve inAppData bağlamıyla çağırır. Etkinlik verileri doğrudan hedef arabelleğe alındığından bu günlük kaydı biçimi, bellek tüketimini en aza indirir. Etkinlik verileri, inProfileID ve inEventType tarafından tanımlanan şema içinde yorumlanacak bağlam etiketlerini İÇERMELİDİR. İlk öğenin etiketi yoksayılır. Etkinlik günlük kaydı sistemi, bunu eventData etiketiyle değiştirir.

Etkinliğin önemi LoggingConfiguration'da belirtilen günlük kaydı eşiğini aşarsa etkinlik günlüğe kaydedilir. Etkinliğin önemi, mevcut eşiği karşılamıyorsa etkinlik iptal edilir ve işlev, sonuç olarak elde edilen etkinlik kimliği olarak bir 0 döndürür.

Çağrının bu varyantı, tüm varsayılan etkinlik seçeneklerini dolaylı olarak belirtir:

  • etkinliğin zaman damgası, çağrı noktasındaki geçerli saati içerir.
  • Olay, aramayı yapan cihazla ilgili olarak işaretlenirse
  • Etkinlik bağımsız olmalı, diğer etkinliklerle ilişkili olmamalıdır.
  • Etkinlik acil değil olarak işaretlenirse

Ayrıntılar
Parametreler
[in] inSchema
Bu etkinliğin önemini, profil kimliğini ve yapı türünü tanımlayan şema.
[in] inEventWriter
Etkinlik verilerini gerçekten serileştirmek için çağrılacak geri çağırma
[in] inAppData
Geri çağırma için uygulama bağlamı.
İadeler
event_id_t Etkinlik, günlüğe yazıldıysa etkinlik kimliği; aksi takdirde 0 değerini alır.

LogEvent

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

Seçenekleri içeren bir geri çağırma aracılığıyla etkinliği günlüğe kaydedin.

İşlev, EventWriterFunct olarak temsil edilen bir etkinliği ve uygulamaya özgü appData bağlamını günlüğe kaydeder. İşlev, etkinlik meta verilerini yazar ve kullanıcı kodunun etkinlik verilerini doğrudan etkinlik günlüğüne yayınlayabilmesi için inEventWriter öğesini bir nl::Weave::TLV::TLVWriter referansı ve inAppData bağlamıyla çağırır. Etkinlik verileri doğrudan hedef arabelleğe alındığından bu günlük kaydı biçimi, bellek tüketimini en aza indirir. Etkinlik verileri, inProfileID ve inEventType tarafından tanımlanan şema içinde yorumlanacak bağlam etiketlerini İÇERMELİDİR. İlk öğenin etiketi yoksayılır. Etkinlik günlük kaydı sistemi, bunu eventData etiketiyle değiştirir.

Etkinliğin önemi LoggingConfiguration'da belirtilen günlük kaydı eşiğini aşarsa etkinlik günlüğe kaydedilir. Etkinliğin önemi, mevcut eşiği karşılamıyorsa etkinlik iptal edilir ve işlev, sonuç olarak elde edilen etkinlik kimliği olarak bir 0 döndürür.

Çağrının bu varyantı, arayanın herhangi bir EventOptions kombinasyonunu ayarlamasına izin verir:

  • zaman damgası, 0 varsayılan olarak çağrı noktasındaki geçerli saati ayarlar
  • Etkinlik kaynağının "root" bölümü (etkinlik kaynağı ve özellik kimliği); NULL değeri varsa varsayılan olarak geçerli cihaz olur. Etkinlik, çağrıyı yapan cihazla ilgili olarak işaretlenir.
  • Etkinlik kimliklerini gruplandırmak için ilgili etkinlik kimliği. İlgili etkinlik kimliği 0 olduğunda etkinlik başka herhangi bir etkinlikle alakalı değil olarak işaretlenir.
  • aciliyet; varsayılan olarak acil değildir.

Ayrıntılar
Parametreler
[in] inSchema
Bu etkinliğin önemini, profil kimliğini ve yapı türünü tanımlayan şema.
[in] inEventWriter
Etkinlik verilerini gerçekten serileştirmek için çağrılacak geri çağırma
[in] inAppData
Geri çağırma için uygulama bağlamı.
[in] inOptions
Etkinlik meta verileri ile ilgili seçenekler. BOŞ olabilir.
İadeler
event_id_t Etkinlik, günlüğe yazıldıysa etkinlik kimliği; aksi takdirde 0 değerini alır.

LogFreeform

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

LogFreeform, varsayılan etkinlik akışına serbest biçimli bir dize yayar.

Dize, günlüğe kaydedilen diğer dizelerle yapısal olarak aynı olan bir hata ayıklama etkinliği yapısı içine yerleştirilir. Etkinlik profili kimliği bir Nest Debug etkinliğine ait, etkinlik türü ise kNestDebug_StringLogEntryEvent olur.

Ayrıntılar
Parametreler
[in] inImportance
Günlük girişinin önemi; önem değeri mevcut önemin altına düşerse etkinlik günlüğe kaydedilmez
[in] inFormat
Ardından biçimlendirilecek bağımsız değişkenlerin geldiği printf uyumlu biçim dizesi
İadeler
event_id_t Etkinlik, günlüğe yazıldıysa etkinlik kimliği; aksi takdirde 0 değerini alır.

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
)

Hata ayıklama etkinliği olarak serbest biçimli metin yayınlamak için yardımcı bir işlev.

Hata ayıklama etkinliği, logregion ve serbest biçimli metin içeren bir yapıdır.

Ayrıntılar
Parametreler
[in,out] ioWriter
Etkinliği yazmak için kullanılacak yazar
[in] appData
Dize biçimini, bağımsız değişkenleri ve günlük bölgesini barındıran bir yapı olan DebugLogContext'in işaretçisi.
[in] inDataTag
Hazırladığımız TLV için bir bağlam etiketi. Burada kullanılmaz ancak EventWriterFunct için typedef tarafından zorunlu tutulur.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı olun.
other
ioWriter tarafından döndürülecek diğer hatalar.

PlainTextWriter

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

Hata ayıklama etkinliği olarak serbest biçimli metin yayınlamak için yardımcı bir işlev.

Hata ayıklama etkinliği, logregion ve serbest biçimli metin içeren bir yapıdır.

Ayrıntılar
Parametreler
[in,out] ioWriter
Etkinliği yazmak için kullanılacak yazar
[in] inDataTag
Oluşturulacak etiket
[in] appData
Dize biçimini, bağımsız değişkenleri ve günlük bölgesini barındıran bir yapı olan DebugLogContext'in işaretçisi.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı olun.
other
ioWriter'dan döndürülebilecek diğer hatalar.

operatör!=

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

operatör==

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