nl::تنسيق Wea::الملفات الشخصية::DataManagement_Current

تشمل مساحة الاسم هذه جميع الواجهات ضمن Weave للملف الشخصي لإدارة بيانات Weave (WDM) المتاحة حاليًا لاستخدام الإنتاج.

ملخّص

التعداد

@100{
  kTag_Region = 1,
  kTag_Message = 2
}
تعداد
علامات kNestDebug_StringLogEntryEvent.
@101{
  kTag_Token = 1,
  kTag_Args = 2
}
تعداد
علامات kNestDebug_TokenizedLogEntryEvent.
@102 تعداد
علامات الأحداث الثابتة.
@104 تعداد
أنواع الرسائل في الملف الشخصي التابع لـ WDM.
@105 تعداد
رموز الحالة الخاصة بـ WDM.
@147 تعداد
@95{
  kTag_CurrentImportance = 1,
  kTag_ImportanceExpiration,
  kTag_MinimumLogUploadInterval,
  kTag_MaximumLogUploadInterval,
  kTag_LoggingDestination,
  kTag_TraitLoggingImportance
}
تعداد
علامات تسجيل الإعدادات.
@96{
  kTag_SupportedLogTransports = 1,
  kTag_SupportsStreaming = 2,
  kTag_SupportsNonVolatileStorage = 3,
  kTag_SupportsPerTraitVerbosity = 4,
  kTag_LoggingVolume = 5,
  kTag_LogBufferingCapacity = 6
}
تعداد
علامات لإمكانيات التسجيل.
@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
}
تعداد
علامات البيانات الوصفية للحدث.
@98 تعداد
تعريفات الملف الشخصي لسمة تصحيح الأخطاء
@99{
  kNestDebug_StringLogEntryEvent = 1,
  kNestDebug_TokenizedLogEntryEvent = 2,
  kNestDebug_TokenizedHeaderEntryEvent = 3
}
تعداد
أنواع الأحداث لسمة Nest Debug
CommandFlags{
  kCommandFlag_MustBeVersionValid = 0x0001,
  kCommandFlag_InitiationTimeValid = 0x0002,
  kCommandFlag_ActionTimeValid = 0x0004,
  kCommandFlag_ExpiryTimeValid = 0x0008,
  kCommandFlag_IsOneWay = 0x0010
}
تعداد
ImportanceType{
  ProductionCritical = 1,
  Production,
  Info,
  Debug
}
تعداد
أهمية إدخال السجلّ.
LoggingManagementStates{
  kLoggingManagementState_Idle = 1,
  kLoggingManagementState_InProgress = 2,
  kLoggingManagementState_Holdoff = 3,
  kLoggingManagementState_Shutdown = 4
}
تعداد
TimestampType تعداد
صلاحية ونوع الطابع الزمني المضمّن في EventOptions.

النوع

CommandFlags typedef
DataVersion typedef
uint64_t
EventProcessor typedef
void *
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData) typedef
دالة تزوّد عنصر eventData للنظام الفرعي لتسجيل الأحداث.
FetchExternalEventsFunct)(EventLoadOutContext *aContext) typedef
نموذج دوال أساسي لاستدعاءات النظام الأساسي التي تسترجع بيانات الحدث.
GenericTraitSinkCatalog typedef
GenericTraitSourceCatalog typedef
ImportanceType typedef
أهمية إدخال السجلّ.
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext) typedef
void(*
مكرّر مقبض السمة.
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer) typedef
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID) typedef
void(*
نموذج أولي للدالة لاستدعاء استدعاء عند تسليم أحداث خارجية إلى المشترك عن بُعد.
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv) typedef
void(*
نموذج أولي للدالة لاستدعاء استدعاء عند إخراج أحداث خارجية من المخزن المؤقت.
PropertyDictionaryKey typedef
uint16_t
PropertyPathHandle typedef
uint32_t
PropertyPathHandle هي تجزئة رقمية فريدة بمعدل 32 بت لمسار WDM ترتبط بجذر مثيل سمة.
PropertySchemaHandle typedef
uint16_t
SchemaVersion typedef
uint16_t
SingleResourceSinkTraitCatalog typedef
SingleResourceSourceTraitCatalog typedef
TimestampType typedef
صلاحية ونوع الطابع الزمني المضمّن في EventOptions.
TraitDataHandle typedef
uint16_t
duration_t nl::Weave::Profiles::DataManagement_Current::duration_t
uint32_t
النوع المستخدم لوصف المدة بالمللي ثانية.
event_id_t nl::Weave::Profiles::DataManagement_Current::event_id_t
uint32_t
نوع رقم تعريف الحدث.
timestamp_t nl::Weave::Profiles::DataManagement_Current::timestamp_t
uint32_t
النوع المستخدم لوصف الطابع الزمني بالمللي ثانية.
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::utc_timestamp_t
uint64_t
النوع المُستخدَم لوصف الطابع الزمني حسب التوقيت العالمي المُنسّق (UTC).

المتغيّرات

sInstance
sLogFileName = "topazlog"[]
char

الدوال

BdxErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode)
void
BdxGetBlockHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock)
void
BdxRejectHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport)
void
BdxSendAcceptHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg)
BdxXferDoneHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer)
void
BdxXferErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError)
void
CreatePropertyPathHandle(PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey)
EventWriterTLVCopy(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
دالة مساعد تترجم عنصر حدث بيانات متسلسل من قبل إلى المخزن المؤقت للحدث.
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
PropertyDictionaryKey
GetPropertySchemaHandle(PropertyPathHandle aHandle)
PropertySchemaHandle
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
bool
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
bool
طريقة التنفيذ المحسّنة للخوارزمية هي مقارنة النُسخ.
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
bool
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
دالة أدوات تبحث عن TraitUpdatableDataSink في كتالوج TraitDataSink
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
سجّل حدثًا من نموذج متسلسل مسبقًا.
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
سجّل حدثًا من نموذج متسلسل مسبقًا، مع خيارات إضافية.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
تسجيل حدث من خلال معاودة الاتصال.
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
تسجيل حدث عبر معاودة اتصال، مع خيارات.
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
تنبعث LogFreeform سلسلة من التصميم المرن إلى تدفق الأحداث التلقائي.
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
دالة مساعدّة لتقليد نص من تصميم مرن كحدث تصحيح أخطاء
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
دالة مساعدّة لتقليد نص من تصميم مرن كحدث تصحيح أخطاء
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
bool

صفوف

nl::Weave::الملفات الشخصية::DataManagement_Current::دائماقبولDataDataAccessControlDelegate
nl::Weave::الملفات الشخصية::DataManagement_Current::BuilderBase

الفئة الأساسية لبرامج ترميز رسالة WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::CircularEventReader

قارئ TLVReader مدعوم من CircularEventBuffer.

nl::Weave::الملفات الشخصية::DataManagement_Current::Command
nl::Weave::الملفات الشخصية::DataManagement_Current::CommandCommand
nl::Weave::الملفات الشخصية::DataManagement_Current::عامTraitCatalogImpl

قدّمنا تطبيق واجهة TraitCatalogBase لمجموعة من مثيلات بيانات السمات التي تشير جميعًا إلى المورد نفسه.

nl::Weave::الملفات الشخصية::DataManagement_Current::IDataElementAccessControlDelegate

واجهة يتم تنفيذها من خلال معالج لعناصر البيانات في NotifyRequest.

nl::Weave::الملفات الشخصية::DataManagement_Current::IDirtyPathCut
nl::Weave::الملفات الشخصية::DataManagement_Current::IPathfilter
nl::Weave::الملفات الشخصية::DataManagement_Current::IWeavePublisherLock

الواجهة التي سيتم تنفيذها من خلال التطبيق لإعداد تسلسل الوصول إلى بُنى بيانات WDM الرئيسية.

nl::Weave::الملفات الشخصية::DataManagement_Current::IWeaveWDM الأقلم

واجهة كائن كتم الصوت.

nl::Weave::الملفات الشخصية::DataManagement_Current::ListBuilderBase

الفئة الأساسية لبرامج ترميز رسائل WDM المتخصّصة في عناصر مصفوفة TLV مثل قوائم البيانات وقوائم الإصدارات.

nl::Weave::الملفات الشخصية::DataManagement_Current::ListParserBase

فئة أساسية محلّلي رسائل WDM المتخصّصة في عناصر مصفوفة TLV مثل قوائم البيانات وقوائم الإصدارات.

nl::Weave::الملفات الشخصية::DataManagement_Current::LogBDXUpload
nl::Weave::الملفات الشخصية::DataManagement_Current::LoggingConfiguration

LoggingConfiguration يتضمّن المكوّن القابل للضبط في حدث Weave تسجيل النظام الفرعي.

nl::Weave::الملفات الشخصية::DataManagement_Current::LoggingManagement

فئة لإدارة سجلات الأحداث في الذاكرة.

nl::Weave::الملفات الشخصية::DataManagement_Current::NotificationEngine
nl::Weave::الملفات الشخصية::DataManagement_Current::ParserBase

الفئة الأساسية للمحللين النصيين لرسالة WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::ResourceId

بنية تضم رقم تعريف المورد.

nl::Weave::الملفات الشخصية::DataManagement_Current::OneResourceTraitCatalog
nl::Weave::الملفات الشخصية::DataManagement_Current::SUBSCRIPTIONClient
nl::Weave::الملفات الشخصية::DataManagement_Current::SUBSCRIPTIONEngine

هذا أغنية منفردة تستضيف جميع اشتراكات WDM Next، من جانب العميل والناشر.

nl::Weave::الملفات الشخصية::DataManagement_Current::SUBSCRIPTIONHandler
nl::Weave::الملفات الشخصية::DataManagement_Current::TraitCatalogBase
nl::Weave::الملفات الشخصية::DataManagement_Current::TraitDataSink
nl::Weave::الملفات الشخصية::DataManagement_Current::TraitDataSource
nl::Weave::الملفات الشخصية::DataManagement_Current::TraitSchemaEngine

يحصل محرّك المخطط على معلومات المخطط المرتبطة بسمة معيّنة ويوفر الأدوات اللازمة لتحليل ذلك النص وترجمته إلى نموذج قابل للاستخدام بواسطة آلات WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::TraitUpdatableDataSink
nl::Weave::الملفات الشخصية::DataManagement_Current::UpdateClient
nl::Weave::الملفات الشخصية::DataManagement_Current::Update القاموسDirtyPathCut

فئة الأداة لإعادة القاموس إلى قائمة الانتظار المعلّقة عند معالجة مسار الموقع الذي يتضمن قاموس القاموس.

nl::Weave::الملفات الشخصية::DataManagement_Current::UpdateDirtyPathFilter

فئة الأداة المساعدة لفلترة المسار عند معالجة الإشعار.

nl::Weave::الملفات الشخصية::DataManagement_Current::UpdateEncoder

يشفِّر هذا العنصر حمولات UpdateRequest WDM وPartialUpdateRequest.

nl::Weave::الملفات الشخصية::DataManagement_Current::ViewClient

البنى

nl::Weave::الملفات الشخصية::DataManagement_Current::CircularEventBuffer

تم إنشاء التخزين المؤقت للأحداث الداخلي حول nl::Weave::TLV::WeaveCiricalTLVBuffer.

nl::Weave::الملفات الشخصية::DataManagement_Current::ConstSchemaVersionRange
nl::Weave::الملفات الشخصية::DataManagement_Current::CopyAndadjustDeltaTimeContext

البنية الداخلية لتجاوز قائمة الأحداث.

nl::Weave::الملفات الشخصية::DataManagement_Current::DebugLogContext
nl::Weave::الملفات الشخصية::DataManagement_Current::DetailsRootSection

البنية التي توفّر حلاً كاملاً لمثيل السمة.

nl::Weave::الملفات الشخصية::DataManagement_Current::EventEnvelopeContext

البنية الداخلية لتجاوز الأحداث.

nl::Weave::الملفات الشخصية::DataManagement_Current::EventLoadOutContext

بنية نسخ قوائم الأحداث على الإخراج.

nl::Weave::الملفات الشخصية::DataManagement_Current::EventOptions

البنية التي توفّر خيارات لحقول الأحداث المختلفة.

nl::Weave::الملفات الشخصية::DataManagement_Current::EventSchema

البنية التي تحدّد مخططًا للبيانات الوصفية للحدث.

nl:: Weave::الملفات الشخصية::DataManagement_Current::ExternalEvent

بنية لتتبّع الأحداث المخزّنة على النظام الأساسي

nl::Weave::الملفات الشخصية::DataManagement_Current::LogStorageResources

فئة مساعدة تُستخدَم في إعداد إدارة التسجيل

nl::Weave::الملفات الشخصية::DataManagement_Current::ReclaimEventCtx
nl::Weave::الملفات الشخصية::DataManagement_Current::SchemaVersionRange
nl::Weave::الملفات الشخصية::DataManagement_Current::TraitPath
nl::Weave::الملفات الشخصية::DataManagement_Current::TraitPathStore
nl::Weave::الملفات الشخصية::DataManagement_Current::VersionedTraitPath

الاتحادات

nl::Weave::الملفات الشخصية::DataManagement_Current::الطابع الزمني

الاتحاد الذي يوفّر نظامًا لضبط التطبيق أو الطابع الزمني للتوقيت العالمي المتفق عليه.

مساحات الأسماء

nl::Weave::الملفات الشخصية::DataManagement_Current::BaseMessageWithsubscribeId
nl::Weave::الملفات الشخصية::DataManagement_Current::CustomCommand

تعريف Command المخصّص في WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::CustomCommandResponse

تعريف استجابة أمر مخصَّص في WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::DataElement

تعريف عنصر بيانات WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::DataList
nl::Weave::الملفات الشخصية::DataManagement_Current::الحدث
nl::Weave::الملفات الشخصية::DataManagement_Current::EventList
nl::Weave::الملفات الشخصية::DataManagement_Current::NotificationRequest
nl::Weave::الملفات الشخصية::DataManagement_Current::المسار

تعريف مسار WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::PathList

تعريف قائمة مسار WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::الأنظمة الأساسية
nl::Weave::الملفات الشخصية::DataManagement_Current::RejectedionRecord
nl::Weave::الملفات الشخصية::DataManagement_Current::RejectedionRecordList
nl::Weave::الملفات الشخصية::DataManagement_Current::StatusElement

تعريف عنصر WDM Status

nl::Weave::الملفات الشخصية::DataManagement_Current::StatusList
nl::Weave::الملفات الشخصية::DataManagement_Current::subscribeCancelRequest
nl::Weave::الملفات الشخصية::DataManagement_Current::الاشتراكتأكيد الطلب
nl::Weave::الملفات الشخصية::DataManagement_Current::subscribeRequest
nl::Weave::الملفات الشخصية::DataManagement_Current::subscribeResponse
nl::Weave::الملفات الشخصية::DataManagement_Current::UpdateRequest

تعريف طلب تحديث WDM.

nl::Weave::الملفات الشخصية::DataManagement_Current::UpdateResponse
nl::Weave::الملفات الشخصية::DataManagement_Current::VersionList
nl::Weave::الملفات الشخصية::DataManagement_Current::ViewRequest
nl::Weave::الملفات الشخصية::DataManagement_Current::ViewResponse

التعداد

@100

 @100

علامات kNestDebug_StringLogEntryEvent.

أماكن إقامة
kTag_Message

سلسلة تحتوي على رسالة تصحيح الأخطاء الفعلية.

kTag_Region

علامة 32 بت غير مُوقَّعة تشير إلى منطقة السجلّ، أي الوحدة التي تنتمي إليها رسالة السجلّ.

@101

 @101

علامات kNestDebug_TokenizedLogEntryEvent.

أماكن إقامة
kTag_Args

مصفوفة من الوسيطات التي سيتم إرسالها مع رسالة الرمز المميز.

kTag_Token

قيمة غير موقَّعة 32 بت مطابقة للرمز المميَّز.

@102

 @102

علامات الأحداث الثابتة.

@104

 @104

أنواع الرسائل في الملف الشخصي التابع لـ WDM.

ويتم ذكر هذه القيم في مواصفات إدارة البيانات.

@105

 @105

رموز الحالة الخاصة بـ WDM.

@147

 @147

@95

 @95

علامات تسجيل الإعدادات.

أماكن إقامة
kTag_CurrentImportance

أهمية التسجيل الحالية، هي القيمة من النوع ImportanceType.

kTag_ImportanceExpiration

الوقت بالثواني بالتوقيت العالمي المُنسّق الذي تعود فيه إعدادات التسجيل العالية الحالية إلى القيم التلقائية

kTag_LoggingDestination

عنوان URL يشير إلى وجهة تحميل السجلّ.

kTag_MaximumLogUploadInterval

الحد الأقصى للمدة، بالثواني، بين محاولات تحميل السجلّات التي يتم تشغيلها تلقائيًا.

kTag_MinimumLogUploadInterval

أقل مدة، بالثواني، بين محاولات تحميل السجلّات التي يتم تشغيلها تلقائيًا.

kTag_TraitLoggingImportance

مصفوفة اختيارية تربط الملفات الشخصية المختارة بمستويات تسجيل أعلى.

ويتخذ كل عنصر في المصفوفة نموذجًا (الملف الشخصي، والمسار، والاستيراد) لرفع مستوى التسجيل من مجموعة فرعية من النظام. لا تكون أهمية تسجيل مستوى الملف الشخصي المتقدم ذات أهمية إلا عندما تتجاوز أولوية التسجيل مستوى الأولوية الحالية، كما تخضع لفترة انتهاء الصلاحية الحالية مثل الأهمية الحالية.

@96

 @96

علامات لإمكانيات التسجيل.

أماكن إقامة
kTag_LogBufferingCapacity

عدد صحيح غير موقَّع 32 بت يصف سعة التخزين المؤقت للسجلات بالكيلوبايت.

kTag_LoggingVolume

عدد صحيح غير موقَّع 32 بت يصف حجم التسجيل المتوقّع بالكيلوبايت في اليوم.

kTag_SupportedLogTransports

مصفوفة من آليات نقل السجلات المتوافقة

kTag_SupportsNonVolatileStorage

قيمة منطقية تشير إلى ما إذا كان الجهاز يتوافق مع مساحة تخزين السجلّ غير المتغيّرة

kTag_SupportsPerTraitVerbosity

قيمة منطقية تشير إلى ما إذا كان الجهاز يدعم إعدادات الإسهاب لكل سمة.

kTag_SupportsStreaming

قيمة منطقية تشير إلى ما إذا كان الجهاز يتوافق مع سجلات البث أم لا

@97

 @97

علامات البيانات الوصفية للحدث.

وللحصول على دلالات كاملة لقيم العلامات، راجِع مواصفات تصميم الأحداث.

أماكن إقامة
kTag_EventData

اختياريّ. بيانات الأحداث نفسها. وإذا كانت القيمة فارغة، سيتم ضبطها تلقائيًا على بنية فارغة.

kTag_EventDeltaSystemTime

العلامة الداخلية لـ WDM، الفارق الزمني عن الحدث السابق في الترميز.

kTag_EventDeltaUTCTime

العلامة الداخلية لـ WDM، الفارق الزمني عن الحدث السابق في الترميز.

kTag_EventID

تسلسل رقم الحدث، معبرًا عنه لكمية غير موقَّعة من 64 بت.

يجب أن يكون الرقم تسلسليًا، وتشير الفواصل في التسلسل إلى فجوات في الحدث.

kTag_EventImportance

أهمية الحدث.

kTag_EventResourceID

اختياريّ.

القيمة هي رقم تعريف المورد الذي ينتمي إليه الحدث. عند حذف العنصر، تكون القيمة مماثلة لقيمة kTag_EventSource

kTag_EventSource

رقم تعريف الجهاز الذي أنشأ الحدث

kTag_EventSystemTimestamp

اختياريّ. الطابع الزمني للنظام بالمللي ثانية.

kTag_EventTraitInstanceID

علامة اختيارية للسمة التي أنشأت الحدث، اختيارية.

kTag_EventTraitProfileID

إلزامي. عدد صحيح غير موقَّع 32 بت يساوي معرّف الملف الشخصي للسمة.

kTag_EventType

إلزامي. عدد صحيح غير موقَّع 16 بت يساوي wdl.event.id لهذا النوع من الأحداث.

kTag_EventUTCTimestamp

اختياريّ. الطابع الزمني بالتوقيت العالمي المُنسّق للحدث بالمللي ثانية.

kTag_ExternalEventStructure

علامة داخلية للأحداث الخارجية. لا يتم نقلها أبدًا عبر السلك، ويجب عدم استخدامها خارج مكتبة Weave.

kTag_RelatedEventID

اختياريّ.

رقم تعريف حدث مرتبط به هذا الحدث. وفي حال حذفها، تكون القيمة تساوي قيمة kTag_EventID.

kTag_RelatedEventImportance

اختياريّ.

أهمية الحدث ذي الصلة. وفي حال حذفها، تكون القيمة تساوي قيمة kTag_EventImportance.

@98

 @98

تعريفات الملف الشخصي لسمة تصحيح الأخطاء

@99

 @99

أنواع الأحداث لسمة Nest Debug

أماكن إقامة
kNestDebug_StringLogEntryEvent

حدث لرسالة تصحيح أخطاء السلسلة ذات التصميم المرن.

kNestDebug_TokenizedHeaderEntryEvent

حدث للتعبير عن معلومات العنوان المميّز.

kNestDebug_TokenizedLogEntryEvent

حدث لرسالة تصحيح الأخطاء المميّزة.

علامات الأوامر

 CommandFlags
أماكن إقامة
kCommandFlag_ActionTimeValid

ضبط وقت تنفيذ الإجراء.

kCommandFlag_ExpiryTimeValid

اضبط وقت انتهاء الصلاحية.

kCommandFlag_InitiationTimeValid

اضبط وقت صحة الإدخال.

kCommandFlag_IsOneWay

يمكنك ضبطها عندما يكون الأمر باتجاه واحد.

kCommandFlag_MustBeVersionValid

ضبط وقت صلاحية حقل الإصدار.

نوع الأهمية

 ImportanceType

أهمية إدخال السجلّ.

تُستخدم الأهمية كطريقة لفلترة الأحداث قبل إطلاقها فعليًا في السجلّ. بعد تسجيل الحدث في السجلّ، لا نقترح أي أحكام أخرى لمحوه من السجلّ. يعمل مستوى الأهمية على منح الأولوية لتخزين الأحداث. إذا تمت إضافة حدث ذي أهمية عالية إلى مخزن مؤقت كامل، يتم إسقاط الأحداث حسب الأهمية (والعمر) لاستيعابها. وبالتالي، فإن مستويات الأهمية لها قيمة نسبية فقط. وإذا كان النظام يستخدم مستوى أهمية واحدًا فقط، يتم تجاهل الأحداث حسب ترتيب العمر فقط، مثل المخزن المؤقت للرنين.

أماكن إقامة
Debug

تشير أهمية تصحيح الأخطاء إلى إدخالات السجلّ التي تهمّ مطوّري النظام، ويتم استخدامها بشكل أساسي في مرحلة التطوير.

لا يتم احتساب سجلات أهمية تصحيح الأخطاء في معدل نقل البيانات أو ميزانيات الطاقة للأجهزة المحدودة، ونتيجةً لذلك، يجب استخدامها فقط لفترة زمنية محدودة في أنظمة الإنتاج.

Info

تشير أهمية المعلومات إلى إدخالات السجلّ التي توفّر إحصاءات وبيانات تشخيص إضافية في نظام التشغيل.

قد يتم استخدام مستوى تسجيل المعلومات على مدار فترة زمنية طويلة في نظام إنتاج أو يمكن استخدامه كمستوى سجل تلقائي في تجربة ميدانية. على الأجهزة المحدودة، يجب مراعاة الإدخالات التي تم تسجيلها على مستوى المعلومات في معدل نقل البيانات وميزانية الذاكرة، ولكن ليس في ميزانية الطاقة.

Production

تشير أهمية الإنتاج إلى إدخالات السجلّ المستخدمة في المراقبة المستمرة لمنظومة Nest المتكاملة وصيانتها.

على الأجهزة المحدودة، يجب احتساب الإدخالات المُسجَّلة بمستوى أهمية الإنتاج في ميزانية الطاقة والذاكرة، حيث من المتوقّع دائمًا أن يتم تسجيلها وتفريغها من الجهاز.

ProductionCritical

تشير أهمية الإنتاج إلى أحداث قد تؤثر خسائرها بشكل مباشر في ميزات التواصل مع العملاء.

قد تستخدم التطبيقات فقدان أحداث بالغة الأهمية للإنتاج للإشارة إلى فشل النظام. على الأجهزة المحدودة، يجب احتساب الإدخالات المُسجَّلة بمستوى الأهمية البالغة من أجل الإنتاج ضِمن ميزانية الطاقة والذاكرة، حيث من المتوقّع دائمًا أن يتم تسجيلها وتفريغها من الجهاز.

حالة تسجيل الدخول

 LoggingManagementStates
أماكن إقامة
kLoggingManagementState_Holdoff

اكتملت عملية إزالة السجلّ، ولا نعيد تشغيل السجلّ حتى تنتهي فترة الاحتفاظ بالبيانات.

kLoggingManagementState_Idle

إلغاء تحميل السجلّ قيد التقدّم، ويمكن أن تبدأ عملية إزالة السجلّ بدون أي قيود.

kLoggingManagementState_InProgress

تفريغ السجلّ قيد التقدم.

kLoggingManagementState_Shutdown

يتعذّر إجراء أي عملية تسجيل.

نوع الطابع الزمني

 TimestampType

صلاحية ونوع الطابع الزمني المضمّن في EventOptions.

النوع

علامات الأوامر

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

إصدار البيانات

uint64_t DataVersion

معالج الأحداث

void * EventProcessor

كاتب الأحداث

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

دالة تزوّد عنصر eventData للنظام الفرعي لتسجيل الأحداث.

من المتوقع أن توفّر الدوال من هذا النوع عنصر eventData للنظام الفرعي لتسجيل الأحداث. يتم استدعاء الدوال من هذا النوع بعد أن ينشئ النظام الفرعي للحدث جميع البيانات الوصفية المطلوبة للحدث. يتم استدعاء الدالة باستخدام nl::Weave::TLV::TLVwriter حتى تنبعث منه عنصر TLV واحد يحمل علامة kTag_EventData. ويجب أن تكون قيمة هذا العنصر بنية تحتوي على بيانات الحدث. ويجب تنظيم بيانات الحدث نفسها باستخدام علامات السياق.

التفاصيل
المَعلمات
[in,out] ioWriter
مرجع إلى العنصر nl::Weave::TLV::TLVwriter لاستخدامه في تسلسل بيانات الأحداث.
[in] inDataTag
علامة سياق مخصّصة لصفحة TLV التي نكتبها
[in] appData
مؤشر إلى سياق خاص بالتطبيق.
قيم الإرجاع
WEAVE_NO_ERROR
تم الإجراء بنجاح.
other
حدث خطأ في الإشارة إلى المتصل بتعذُّر إكمال تسلسل بيانات الحدث. يجب نشر الأخطاء من عمليات الاستدعاء إلى iowriter بدون إعادة التعيين. إذا كانت الدالة تعرض أي نوع من الأخطاء، يتم إلغاء إنشاء الحدث، ولا تتم كتابة الحدث في السجل.
اطّلِع أيضًا على:
PlainTextwriter
EventwriterTLVCopy

FunExternalEventFunct

WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)

نموذج دوال أساسي لاستدعاءات النظام الأساسي التي تسترجع بيانات الحدث.

وعلى غرار Fetchالأحداث، تعرض دالة الاسترجاع هذه جميع الأحداث من EventLoadOutContext.mstartEventID حتى ExternalEvent.mLastEventID.

مؤشر السياق من النوع FetchExternalEventContext. ويتضمّن ذلك EventLoadOutContext، مع بعض المتغيرات المساعدة لتنسيق TLV. ويتضمّن أيضًا مؤشرًا إلى بنية ExternalEvent التي تم إنشاؤها عند تسجيل معاودة الاتصال. يحدد هذا الحقل نطاق معرّف الحدث لمعاودة الاتصال.

عند الرجوع من الدالة، يجب أن يعكس EventLoadOutContext.mCurrentEventID معرّف الحدث الأول الذي لم تتم كتابته بنجاح في المخزن المؤقت TLV. يجب أن يكتب النظام الأساسي عنوان الأحداث والبيانات إلى الكاتب TLV بالتنسيق الصحيح، الذي يحدِّده بروتوكول EventLogging. ويجب أن تحافظ المنصة أيضًا على تميُّز الأحداث والطوابع الزمنية.

يجب نشر جميع أخطاء TLV إلى مستويات أعلى. على سبيل المثال، سيعمل نفاد المساحة في المخزن المؤقت على إرسال رسالة مُرسَلة، متبوعةً بمكالمة أخرى إلى معاودة الاتصال بأي رقم تعريف حدث متبقٍ.

التفاصيل
قيم الإرجاع
WEAVE_ERROR_NO_MEMORY
إذا لم تكن هناك مساحة لكتابة الأحداث.
WEAVE_ERROR_BUFFER_TOO_SMALL
إذا لم تكن هناك مساحة لكتابة الأحداث.
WEAVE_NO_ERROR
تم الإجراء بنجاح.
WEAVE_END_OF_TLV
تم الإجراء بنجاح.

GeneralTraitSinkCatalog

GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog

GeneralTraitSourceCatalog

GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog

نوع الأهمية

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

أهمية إدخال السجلّ.

تُستخدم الأهمية كطريقة لفلترة الأحداث قبل إطلاقها فعليًا في السجلّ. بعد تسجيل الحدث في السجلّ، لا نقترح أي أحكام أخرى لمحوه من السجلّ. يعمل مستوى الأهمية على منح الأولوية لتخزين الأحداث. إذا تمت إضافة حدث ذي أهمية عالية إلى مخزن مؤقت كامل، يتم إسقاط الأحداث حسب الأهمية (والعمر) لاستيعابها. وبالتالي، فإن مستويات الأهمية لها قيمة نسبية فقط. وإذا كان النظام يستخدم مستوى أهمية واحدًا فقط، يتم تجاهل الأحداث حسب ترتيب العمر فقط، مثل المخزن المؤقت للرنين.

معاودة الاتصال

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

مكرّر مقبض السمة.

LoggingBufferHandler

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

إشعار من أجل تسليم الأحداث الخارجية

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

نموذج أولي للدالة لاستدعاء استدعاء عند تسليم أحداث خارجية إلى المشترك عن بُعد.

عند تسليم الأحداث الخارجية إلى مشترك عن بُعد، سيُرسل المحرّك إشعارًا إلى موفّر الحدث الخارجي. ويحتوي معاودة الاتصال على حدث آخر معرّف تم تسليمه ومعرّف المشترك الذي تلقى الحدث.

التفاصيل
المَعلمات
[in] inEv
عنصر الأحداث الخارجي المقابل للأحداث التي تم تسليمها
[in] inLastDeliveredEventID
رقم تعريف الحدث الأخير الذي تم إرساله إلى المشترك
[in] inRecipientNodeID
رقم تعريف عقدة Weave للمستلِم

إرسال إشعار إلى الأحداث الخارجيةالممتعة

void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)

نموذج أولي للدالة لاستدعاء استدعاء عند إخراج أحداث خارجية من المخزن المؤقت.

عند إخراج العنصر الخارجي من الحدث من المخزن المؤقت للرسائل الصادرة، سيقدّم المحرّك إشعارًا إلى موفّر الحدث الخارجي. يحتوي معاودة الاتصال على الحدث الخارجي الذي سيتم إخراجه.

التفاصيل
المَعلمات
[in] inEv
عنصر يتم التخلص منه للأحداث الخارجية

مفتاح القاموس

uint16_t PropertyDictionaryKey

اسم مسار المسار

uint32_t PropertyPathHandle

PropertyPathHandle هي تجزئة رقمية فريدة بمعدل 32 بت لمسار WDM ترتبط بجذر مثيل سمة.

ويتألف من جزءين إليها:

  • رقم 16 بت أقل يتم ربطه بالجزء الثابت من المخطط.
  • عندما يشير أدنى 16 بت إلى مسار ضمن أحد عناصر المعجم، يتوفر رقم 16 بت أعلى يمثل مفتاح القاموس المرتبط بهذا العنصر. إذا كان أدنى 16 بت يشير إلى عنصر غير معجم، يجب أن يكون أكبر 16 بت 0.

إليك بعض السمات:

  • وتتضمن كل سمة سمة مسار معالجة خاصة بها.
  • سيكون لكل مسار مسار فرعي فريد في WDM مسار PropertyPathHandle الفريد.
  • يتم إنشاء PropertyPathHandles تلقائيًا (يتم ذلك يدويًا في الوقت الحالي) من خلال أداة تجميع للسمات من IDL ويتم تمثيله كقائمة إحصاءية في ملف العنوان الخاص بـ trait'.
  • ومن خلال هذه البنية، لا يجب أن يتعامل منطق التطبيق مطلقًا مع مسارات WDM مباشرةً. بدلاً من ذلك، يتم إجراء تفاعلاتهم مع WDM بشكل حصري من خلال هذه المقابض.
  • ثمة قيمتان محجوزتان للمقابض الخاصة بالمسارات والتي لها معنى محدّد:
    • يشير 0 إلى 'NULL' اسم الحساب
    • يشير الرقم 1 إلى اسم مقبض يشير إلى جذر مثيل السمة.

اسم وظيفة schemaSchema

uint16_t PropertySchemaHandle

إصدار المخطط

uint16_t SchemaVersion

OneResourceSinkTraitCatalog

SingleResourceTraitCatalog< TraitDataSink > SingleResourceSinkTraitCatalog

OneResourceSourceTraitCatalog

SingleResourceTraitCatalog< TraitDataSource > SingleResourceSourceTraitCatalog

نوع الطابع الزمني

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

صلاحية ونوع الطابع الزمني المضمّن في EventOptions.

TraitDataHandle

uint16_t TraitDataHandle

المدة_t

uint32_t duration_t

النوع المستخدم لوصف المدة بالمللي ثانية.

event_id_t (معرّف_الحدث)

uint32_t event_id_t

نوع رقم تعريف الحدث.

timestamp_t

uint32_t timestamp_t

النوع المستخدم لوصف الطابع الزمني بالمللي ثانية.

utc_timestamp_t

uint64_t utc_timestamp_t

النوع المُستخدَم لوصف الطابع الزمني حسب التوقيت العالمي المُنسّق (UTC).

المتغيّرات

مثيل

LoggingManagement sInstance

اسم ملف السجلّ

char sLogFileName[] = "topazlog"

الدوال

BdxErrorHandler

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

BdxGetBlockHandler

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

BdxRejectedHandler

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
)

إنشاء موقع PropertyPathHandle

PropertyPathHandle CreatePropertyPathHandle(
  PropertySchemaHandle aPropertyPathSchemaId,
  PropertyDictionaryKey aPropertyPathDictionaryKey
)

نسخ EventLrTLV

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

دالة مساعد تترجم عنصر حدث بيانات متسلسل من قبل إلى المخزن المؤقت للحدث.

التفاصيل
المَعلمات
[in,out] ioWriter
الكاتب الذي يتم استخدامه لكتابة الحدث
[in] inDataTag
علامة سياق لـ TLV التي يتم نسخها. غير مستخدم هنا، ولكن مطلوب من النوع typedeftFunct.
[in] appData
مؤشر إلى TLVReader يتضمن بيانات الأحداث المتسلسلة.
قيم الإرجاع
WEAVE_NO_ERROR
تم الإجراء بنجاح.
other
الأخطاء الأخرى التي يتم عرضها من خلال iowriter

الحصول على قاموس القاموس

PropertyDictionaryKey GetPropertyDictionaryKey(
  PropertyPathHandle aHandle
)

GetGetSchemaHandle

PropertySchemaHandle GetPropertySchemaHandle(
  PropertyPathHandle aHandle
)

IsNullPropertyPathHHle

bool IsNullPropertyPathHandle(
  PropertyPathHandle aHandle
)

IsRootPropertyPathHandle

bool IsRootPropertyPathHandle(
  PropertyPathHandle aHandle
)

IsVersionNewer

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

طريقة التنفيذ المحسّنة للخوارزمية هي مقارنة النُسخ.

من جهة العميل، يكون الإصدار الذي تم استلامه من الخدمة دائمًا هو أحدث إصدار.

IsVersionNewerOrEqual

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

تحديد الموقع

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

دالة أدوات تبحث عن TraitUpdatableDataSink في كتالوج TraitDataSink

التفاصيل
المَعلمات
[in] aTraitDataHandle
مقبض المغسلة للبحث عنها.
[in] aDataSinkCatalog
كتالوج للبحث فيه
المرتجعات
مؤشر إلى TraitUpdatableDataSink، حقل فارغ إذا لم يكن اسم الحساب متوفرًا أو يشير إلى ملف TraitDataSink غير قابل للتعديل.

حدث الحدث

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

سجّل حدثًا من نموذج متسلسل مسبقًا.

تسجّل الدالة حدثًا يمثله nl::Weave::TLV::TLVReader. يعني ذلك أن تمثيل بيانات الحدث متسلسل من قبل في مساحة التخزين التي تتضمن nl::Weave::TLV::TLVReader. من المتوقع أن يحتوي nl::Weave::TLV::TLVReader على عنصر بيانات واحد على الأقل، ويجب أن يكون ذلك العنصر بنية. يتم التعامل مع العنصر الأول الذي تمت قراءته من القارئ على أنه بيانات الأحداث ويتم تخزينه في سجلّ الأحداث. يجب أن تحتوي بيانات الأحداث على علامات سياقية ليتم تفسيرها ضمن المخطط المُحدَّد من خلال inProfileID وinEventType. وسيتم تجاهل علامة العنصر الأول، وسيستبدلها نظام تسجيل الأحداث بعلامة eventData.

يتم تسجيل الحدث إذا تجاوز أهميته الحدّ الأدنى للتسجيل المُحدَّد في LogConfiguration. إذا لم تتوافق أهمية الحدث مع الحد الأدنى الحالي، يتم إسقاطها وتعرض الدالة 0 كرقم تعريف الحدث الناتج.

يحدد هذا الخيار ضمنيًا جميع خيارات الحدث التلقائية:

  • يتم إنشاء الطابع الزمني للحدث بالوقت الحالي في وقت المكالمة،
  • يتم وضع علامة على الحدث للإشارة إلى أنّه مرتبط بالجهاز الذي يجري المكالمة،
  • أنّ الحدث مستقل عن غيره من الأحداث
  • تم تصنيف الحدث على أنه غير عاجل،

التفاصيل
المَعلمات
[in] inSchema
مخطط يحدد الأهمية ومعرّف الملف الشخصي ونوع البنية لهذا الحدث.
[in] inData
قارئ TLV الذي يحتوي على بيانات الحدث كعنصر أول.
المرتجعات
event_id_t معرّف الحدث إذا تمت كتابة الحدث في السجلّ، أو 0 بخلاف ذلك.

حدث الحدث

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

سجّل حدثًا من نموذج متسلسل مسبقًا، مع خيارات إضافية.

تسجّل الدالة حدثًا يمثله nl::Weave::TLV::TLVReader. يعني ذلك أن تمثيل بيانات الحدث متسلسل من قبل في مساحة التخزين التي تتضمن nl::Weave::TLV::TLVReader. من المتوقع أن يحتوي nl::Weave::TLV::TLVReader على عنصر بيانات واحد على الأقل، ويجب أن يكون ذلك العنصر بنية. يتم التعامل مع العنصر الأول الذي تمت قراءته من القارئ على أنه بيانات الأحداث ويتم تخزينه في سجلّ الأحداث. يجب أن تحتوي بيانات الأحداث على علامات سياقية ليتم تفسيرها ضمن المخطط المُحدَّد من خلال inProfileID وinEventType. وسيتم تجاهل علامة العنصر الأول، وسيستبدلها نظام تسجيل الأحداث بعلامة eventData.

يتم تسجيل الحدث إذا تجاوز أهميته الحدّ الأدنى للتسجيل المُحدَّد في LogConfiguration. إذا لم تتوافق أهمية الحدث مع الحد الأدنى الحالي، يتم إسقاطها وتعرض الدالة 0 كرقم تعريف الحدث الناتج.

يسمح هذا النوع من الاستدعاء للمتصل بتحديد أي مجموعة من EventOptions:

  • الطابع الزمني، عندما يتم ضبط 0 تلقائيًا على الوقت الحالي في وقت المكالمة،
  • "root" قسم مصدر الحدث (مصدر الحدث ورقم تعريف السمة) وإذا كانت القيمة NULL، يتم ضبطها تلقائيًا على الجهاز الحالي. يتم وضع علامة على الحدث للإشارة إلى أنّه الجهاز الذي يجري المكالمة.
  • رقم تعريف حدث ذي صلة لتجميع أرقام تعريف الأحداث. عندما يكون رقم تعريف الحدث ذي الصلة هو 0، يتم وضع علامة على الحدث على أنه غير مرتبط بأي أحداث أخرى،
  • عاجلة، بشكل تلقائي وغير عاجل

التفاصيل
المَعلمات
[in] inSchema
مخطط يحدد الأهمية ومعرّف الملف الشخصي ونوع البنية لهذا الحدث.
[in] inData
قارئ TLV الذي يحتوي على بيانات الحدث كعنصر أول. يجب ألا تكون القيمة NULL.
[in] inOptions
خيارات البيانات الوصفية للحدث. قد تكون القيمة NULL.
المرتجعات
event_id_t معرّف الحدث إذا تمت كتابة الحدث في السجلّ، أو 0 بخلاف ذلك.

حدث الحدث

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

تسجيل حدث من خلال معاودة الاتصال.

تسجِّل الدالة حدثًا يمثله EventكتابةrFunct وسياق appData خاص بالتطبيق. تكتب الدالة البيانات الوصفية للحدث وتستدعي inEventWriter باستخدام سياق nl::Weave::TLV::TLVwriter وسياق inAppData حتى يتمكّن رمز المستخدم من إصدار بيانات الحدث مباشرةً إلى سجلّ الحدث. يؤدي هذا النوع من تسجيل الأحداث إلى تقليل استهلاك الذاكرة، حيث يتم توزيع بيانات الأحداث مباشرة في المخزن المؤقت المستهدَف. يجب أن تحتوي بيانات الأحداث على علامات سياقية ليتم تفسيرها ضمن المخطط المُحدَّد في inProfileID وinEventType. وسيتم تجاهل علامة العنصر الأول، وسيستبدلها نظام تسجيل الأحداث بعلامة eventData.

يتم تسجيل الحدث إذا تجاوز أهميته الحدّ الأدنى للتسجيل المُحدَّد في LogConfiguration. إذا لم تتوافق أهمية الحدث مع الحد الأدنى الحالي، يتم إسقاطها وتعرض الدالة 0 كرقم تعريف الحدث الناتج.

يحدد هذا الخيار ضمنيًا جميع خيارات الحدث التلقائية:

  • يتم إنشاء الطابع الزمني للحدث بالوقت الحالي في وقت المكالمة،
  • يتم وضع علامة على الحدث للإشارة إلى أنّه مرتبط بالجهاز الذي يجري المكالمة،
  • أنّ الحدث مستقل عن غيره من الأحداث
  • تم تصنيف الحدث على أنه غير عاجل،

التفاصيل
المَعلمات
[in] inSchema
مخطط يحدد الأهمية ومعرّف الملف الشخصي ونوع البنية لهذا الحدث.
[in] inEventWriter
استدعاء استدعاء تسلسل بيانات الحدث فعليًا
[in] inAppData
سياق التطبيق لمعاودة الاتصال.
المرتجعات
event_id_t معرّف الحدث إذا تمت كتابة الحدث في السجلّ، أو 0 بخلاف ذلك.

حدث الحدث

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

تسجيل حدث عبر معاودة اتصال، مع خيارات.

تسجِّل الدالة حدثًا يمثله EventكتابةrFunct وسياق appData خاص بالتطبيق. تكتب الدالة البيانات الوصفية للحدث وتستدعي inEventWriter باستخدام سياق nl::Weave::TLV::TLVwriter وسياق inAppData حتى يتمكّن رمز المستخدم من إصدار بيانات الحدث مباشرةً إلى سجلّ الحدث. يؤدي هذا النوع من تسجيل الأحداث إلى تقليل استهلاك الذاكرة، حيث يتم توزيع بيانات الأحداث مباشرة في المخزن المؤقت المستهدَف. يجب أن تحتوي بيانات الأحداث على علامات سياقية ليتم تفسيرها ضمن المخطط المُحدَّد في inProfileID وinEventType. وسيتم تجاهل علامة العنصر الأول، وسيستبدلها نظام تسجيل الأحداث بعلامة eventData.

يتم تسجيل الحدث إذا تجاوز أهميته الحدّ الأدنى للتسجيل المُحدَّد في LogConfiguration. إذا لم تتوافق أهمية الحدث مع الحد الأدنى الحالي، يتم إسقاطها وتعرض الدالة 0 كرقم تعريف الحدث الناتج.

يسمح هذا النوع من الاستدعاء للمتصل بتحديد أي مجموعة من EventOptions:

  • الطابع الزمني، عندما يتم ضبط 0 تلقائيًا على الوقت الحالي في وقت المكالمة،
  • "root" قسم مصدر الحدث (مصدر الحدث ورقم تعريف السمة) وإذا كانت القيمة NULL، يتم ضبطها تلقائيًا على الجهاز الحالي. يتم وضع علامة على الحدث للإشارة إلى أنّه الجهاز الذي يجري المكالمة.
  • رقم تعريف حدث ذي صلة لتجميع أرقام تعريف الأحداث. عندما يكون رقم تعريف الحدث ذي الصلة هو 0، يتم وضع علامة على الحدث على أنه غير مرتبط بأي أحداث أخرى،
  • عاجلة، بشكل تلقائي وغير عاجل

التفاصيل
المَعلمات
[in] inSchema
مخطط يحدد الأهمية ومعرّف الملف الشخصي ونوع البنية لهذا الحدث.
[in] inEventWriter
استدعاء استدعاء تسلسل بيانات الحدث فعليًا
[in] inAppData
سياق التطبيق لمعاودة الاتصال.
[in] inOptions
خيارات البيانات الوصفية للحدث. قد تكون القيمة NULL.
المرتجعات
event_id_t معرّف الحدث إذا تمت كتابة الحدث في السجلّ، أو 0 بخلاف ذلك.

LogFreeform

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

تنبعث LogFreeform سلسلة من التصميم المرن إلى تدفق الأحداث التلقائي.

وسيتم تضمين السلسلة في بنية حدث تصحيح الأخطاء، كما أنها متماثلة تمامًا مع السلاسل الأخرى المسجَّلة. سيكون معرّف الملف الشخصي للحدث هو رقم تعريف حدث تصحيح الأخطاء من Nest، وسيكون نوع الحدث هو kNestDebug_StringLogEntryEvent.

التفاصيل
المَعلمات
[in] inImportance
أهمية إدخال السجلّ، وإذا كانت الأهمية أقل من الأهمية الحالية، لا يتم تسجيل الحدث فعليًا
[in] inFormat
سلسلة التنسيق متوافقة مع printf، متبوعةً بالوسيطات المراد تنسيقها
المرتجعات
event_id_t معرّف الحدث إذا تمت كتابة الحدث في السجلّ، أو 0 بخلاف ذلك.

LookForElementWithTag

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

نص عادي

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

دالة مساعدّة لتقليد نص من تصميم مرن كحدث تصحيح أخطاء

حدث تصحيح الأخطاء هو بنية ذات منطقة سجل ونص حر.

التفاصيل
المَعلمات
[in,out] ioWriter
الكاتب الذي يتم استخدامه لكتابة الحدث
[in] appData
مؤشر إلى DebugLogContext، وهي بنية تتضمن تنسيق سلسلة ووسيطات ومنطقة سجل
[in] inDataTag
علامة سياق مخصّصة لصفحة TLV التي نكتبها غير مستخدم هنا، ولكن مطلوب من النوع typedeftFunct.
قيم الإرجاع
WEAVE_NO_ERROR
تم الإجراء بنجاح.
other
الأخطاء الأخرى التي يتم عرضها من خلال iowriter

نص عادي

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

دالة مساعدّة لتقليد نص من تصميم مرن كحدث تصحيح أخطاء

حدث تصحيح الأخطاء هو بنية ذات منطقة سجل ونص حر.

التفاصيل
المَعلمات
[in,out] ioWriter
الكاتب الذي يتم استخدامه لكتابة الحدث
[in] inDataTag
العلامة التي سيتم إرسالها
[in] appData
مؤشر إلى DebugLogContext، وهي بنية تتضمن تنسيق سلسلة ووسيطات ومنطقة سجل
قيم الإرجاع
WEAVE_NO_ERROR
تم الإجراء بنجاح.
other
الأخطاء الأخرى التي قد يتم عرضها من iowriter

عامل التشغيل!=

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

عامل التشغيل==

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