nl:: Weave:: Profiles:: DataManagement_Current:: LoggingManagement
#include <src/lib/profiles/data-management/Current/LoggingManagement.h>
Một lớp để quản lý nhật ký sự kiện trong bộ nhớ.
Tóm tắt
Hàm khởi tạo và hàm phá |
|
---|---|
LoggingManagement(nl::Weave::WeaveExchangeManager *inMgr, size_t inNumBuffers, const LogStorageResources *const inLogStorageResources)
Hàm khởi tạo LoggingManagement.
|
|
LoggingManagement(void)
Hàm khởi tạo mặc định LoggingManagement.
|
Hàm công khai |
|
---|---|
BlitEvent(EventLoadOutContext *aContext, const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
|
Chức năng trợ giúp để ghi dữ liệu và tiêu đề sự kiện theo giao thức ghi nhật ký sự kiện.
|
CancelShutdownInProgress(void)
|
void
Đặt cờ mShutdownInProgress thành false.
|
CheckShouldRunWDM(void)
|
bool
Quyết định có giảm tải các sự kiện dựa trên số byte trong vùng đệm sự kiện chưa được lên lịch để tải lên hay không.
|
FetchEventsSince(nl::Weave::TLV::TLVWriter & ioWriter, ImportanceType inImportance, event_id_t & ioEventID)
|
Hàm truy xuất sự kiện có tầm quan trọng đã chỉ định kể từ mã sự kiện đã chỉ định.
|
GetBytesWritten(void) const
|
uint32_t
Nhận tổng số byte đã ghi (tính theo tất cả mức độ quan trọng của sự kiện) vào nhật ký này kể từ khi tạo thực thể.
|
GetEventReader(nl::Weave::TLV::TLVReader & ioReader, ImportanceType inImportance)
|
Một phương pháp trợ giúp hữu ích cho việc kiểm tra vùng đệm nhật ký trong bộ nhớ.
|
GetFirstEventID(ImportanceType inImportance)
|
Tìm nạp mã sự kiện đầu tiên hiện được lưu trữ cho một mức độ quan trọng cụ thể.
|
GetLastEventID(ImportanceType inImportance)
|
Tìm nạp mã nhận dạng được cung cấp gần đây nhất theo một mức độ quan trọng cụ thể.
|
IsShutdownInProgress(void)
|
bool
Kiểm tra cờ mShutdownInProgress.
|
IsValid(void)
|
bool
IsValid sẽ trả về kết quả cho biết thực thể LoggingManagement có hợp lệ hay không.
|
LoadEvents(TLVReader & reader)
|
Tải sự kiện Weave đã tồn tại trước đó.
|
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.
|
MarkShutdownInProgress(void)
|
void
Đặt cờ mShutdownInProgress thành true.
|
NotifyEventsDelivered(ImportanceType inImportance, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
|
void
|
RegisterEventCallbackForImportance(ImportanceType inImportance, FetchExternalEventsFunct inFetchCallback, NotifyExternalEventsDeliveredFunct inNotifyCallback, NotifyExternalEventsEvictedFunct inEvictedCallback, size_t inNumEvents, event_id_t *outLastEventID)
|
API công khai để đăng ký một nhóm sự kiện được lưu trữ bên ngoài.
|
RegisterEventCallbackForImportance(ImportanceType inImportance, FetchExternalEventsFunct inFetchCallback, NotifyExternalEventsDeliveredFunct inNotifyCallback, size_t inNumEvents, event_id_t *outLastEventID)
|
API công khai để đăng ký một nhóm sự kiện được lưu trữ bên ngoài.
|
RegisterEventCallbackForImportance(ImportanceType inImportance, FetchExternalEventsFunct inFetchCallback, size_t inNumEvents, event_id_t *outLastEventID)
|
API công khai để đăng ký một nhóm sự kiện được lưu trữ bên ngoài.
|
ScheduleFlushIfNeeded(bool inFlushRequested)
|
Lên lịch cho tác vụ giảm tải nhật ký.
|
SerializeEvents(TLVWriter & writer)
|
Chuyển đổi tuần tự các sự kiện Weave thuộc mọi loại mức độ quan trọng.
|
SetBDXUploader(LogBDXUpload *inUploader)
|
void
|
SetExchangeManager(nl::Weave::WeaveExchangeManager *inMgr)
|
Thiết lập để WeaveExchangeManager được dùng với hệ thống phụ ghi nhật ký này.
|
SetLoggingEndpoint(event_id_t *inEventEndpoints, size_t inNumImportanceLevels, size_t & outLoggingPosition)
|
|
SkipEvent(EventLoadOutContext *aContext)
|
void
Hàm trợ giúp bỏ qua thao tác ghi một sự kiện tương ứng với mã sự kiện được phân bổ.
|
ThrottleLogger(void)
|
void
ThrottleLogger nâng cấp độ ghi nhật ký hiệu quả lên cấp độ Sản xuất.
|
UnregisterEventCallbackForImportance(ImportanceType inImportance, event_id_t inEventID)
|
void
API công khai để huỷ đăng ký một nhóm các sự kiện được lưu trữ bên ngoài.
|
UnthrottleLogger(void)
|
void
UnthrottleLogger khôi phục cấp độ ghi nhật ký hiệu quả về cấp độ ghi nhật ký đã định cấu hình.
|
Hàm tĩnh công khai |
|
---|---|
CreateLoggingManagement(nl::Weave::WeaveExchangeManager *inMgr, size_t inNumBuffers, const LogStorageResources *const inLogStorageResources)
|
void
Tạo đối tượng LoggingManagement và khởi chạy hệ thống con quản lý nhật ký bằng các tài nguyên được cung cấp.
|
DestroyLoggingManagement(void)
|
void
Thực hiện mọi hành động chúng tôi cần khi tắt tính năng này.
|
GetInstance(void)
|
Hàm công khai
BlitEvent
WEAVE_ERROR BlitEvent( EventLoadOutContext *aContext, const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions )
Chức năng trợ giúp để ghi dữ liệu và tiêu đề sự kiện theo giao thức ghi nhật ký sự kiện.
Thông tin chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
CancelShutdownInProgress
void CancelShutdownInProgress( void )
Đặt cờ mShutdownInProgress thành false.
CheckShouldRunWDM
bool CheckShouldRunWDM( void )
Quyết định có giảm tải các sự kiện dựa trên số byte trong vùng đệm sự kiện chưa được lên lịch để tải lên hay không.
Hành vi của hàm được điều khiển thông qua hằng số WEAVE_CONFIG_EVENT_LOGGING_BYTE_THRESHOLD. Nếu hệ thống đã ghi nhiều hơn số byte kể từ lần gần đây nhất một Thông báo WDM được gửi, thì hàm này sẽ cho biết đã đến lúc kích hoạt NotificationEngine.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Giá trị trả về |
|
FetchEventsSince
WEAVE_ERROR FetchEventsSince( nl::Weave::TLV::TLVWriter & ioWriter, ImportanceType inImportance, event_id_t & ioEventID )
Hàm truy xuất sự kiện có tầm quan trọng đã chỉ định kể từ mã sự kiện đã chỉ định.
Với nl::Weave::TLV::TLVWriter, một loại mức độ quan trọng và mã sự kiện, hàm sẽ tìm nạp các sự kiện có mức độ quan trọng đã chỉ định kể từ sự kiện được chỉ định. Hàm này sẽ tiếp tục tìm nạp các sự kiện cho đến khi hết dung lượng trong nl::Weave::TLV::TLVWriter hoặc trong nhật ký. Hàm này sẽ chấm dứt việc ghi sự kiện trên ranh giới sự kiện.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
GetBytesWritten
uint32_t GetBytesWritten( void ) const
Nhận tổng số byte đã ghi (tính theo tất cả mức độ quan trọng của sự kiện) vào nhật ký này kể từ khi tạo thực thể.
Thông tin chi tiết | |
---|---|
Trả về |
Số byte được ghi vào nhật ký.
|
GetEventReader
WEAVE_ERROR GetEventReader( nl::Weave::TLV::TLVReader & ioReader, ImportanceType inImportance )
Một phương pháp trợ giúp hữu ích cho việc kiểm tra vùng đệm nhật ký trong bộ nhớ.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Trả về |
WEAVE_NO_ERROR Không có điều kiện.
|
GetFirstEventID
event_id_t GetFirstEventID( ImportanceType inImportance )
Tìm nạp mã sự kiện đầu tiên hiện được lưu trữ cho một mức độ quan trọng cụ thể.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
event_id_t Mã sự kiện hiện được lưu trữ đầu tiên cho tầm quan trọng của sự kiện đó
|
GetLastEventID
event_id_t GetLastEventID( ImportanceType inImportance )
Tìm nạp mã nhận dạng được cung cấp gần đây nhất theo một mức độ quan trọng cụ thể.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
event_id_t đã được cung cấp gần đây nhất cho mức độ quan trọng của sự kiện đó
|
IsShutdownInProgress
bool IsShutdownInProgress( void )
Kiểm tra cờ mShutdownInProgress.
IsValid
bool IsValid( void )
IsValid sẽ trả về kết quả cho biết thực thể LoggingManagement có hợp lệ hay không.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Giá trị trả về |
|
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 inProfileID
và inEventType
xác định. Thẻ của phần tử đầu tiên sẽ bị bỏ qua; hệ thống ghi nhật ký sự kiện sẽ thay thế thẻ này bằng thẻ eventData.
Sự kiện này được ghi lại nếu tầm quan trọng của giả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ố |
|
||||||||
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.
|
LoggingManagement
LoggingManagement( nl::Weave::WeaveExchangeManager *inMgr, size_t inNumBuffers, const LogStorageResources *const inLogStorageResources )
Hàm khởi tạo LoggingManagement.
Khởi động LoggingManagement bằng một mảng LogStorageResources. Mảng phải cung cấp tài nguyên cho từng mức độ quan trọng hợp lệ, các phần tử của mảng phải có giá trị dạng số tăng dần (và theo mức độ quan trọng giảm dần); phần tử đầu tiên trong mảng tương ứng với tài nguyên được phân bổ cho những sự kiện quan trọng nhất và phần tử cuối cùng tương ứng với các sự kiện ít quan trọng nhất.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
LoggingManagement
LoggingManagement( void )
Hàm khởi tạo mặc định LoggingManagement.
Được cung cấp chủ yếu để làm cho trình biên dịch hài lòng.
Thông tin chi tiết | |
---|---|
Trả về |
MarkShutdownInProgress
void MarkShutdownInProgress( void )
Đặt cờ mShutdownInProgress thành true.
NotifyEventsDelivered
void NotifyEventsDelivered( ImportanceType inImportance, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID )
RegisterEventCallbackForImportance
WEAVE_ERROR RegisterEventCallbackForImportance( ImportanceType inImportance, FetchExternalEventsFunct inFetchCallback, NotifyExternalEventsDeliveredFunct inNotifyCallback, NotifyExternalEventsEvictedFunct inEvictedCallback, size_t inNumEvents, event_id_t *outLastEventID )
API công khai để đăng ký một nhóm sự kiện được lưu trữ bên ngoài.
Đăng ký lệnh gọi lại của biểu mẫu FetchExternalEventsFunct. API này yêu cầu nền tảng phải biết số lượng sự kiện khi đăng ký. Các hoạt động nội bộ cũng yêu cầu số này không đổi. Vì API này không cho phép nền tảng đăng ký mã sự kiện cụ thể, nên điều này ngăn nền tảng lưu trữ sự kiện lâu dài (ít nhất là với mã sự kiện duy nhất).
Lệnh gọi lại sẽ được gọi mỗi khi người đăng ký cố gắng tìm nạp mã sự kiện trong phạm vi bất kỳ số lần cho đến khi người đăng ký bị huỷ đăng ký.
Bạn nên sử dụng biến thể này của hàm khi nhà cung cấp bên ngoài muốn nhận thông báo cả khi sự kiện đã được phân phối tới người đăng ký lẫn khi đối tượng sự kiện bên ngoài bị loại.
Khi các sự kiện được phân phối, nhà cung cấp bên ngoài sẽ được thông báo về điều đó cùng với mã nhận dạng nút của người nhận và mã của sự kiện cuối cùng đã gửi tới người nhận đó. Xin lưu ý rằng nhà cung cấp bên ngoài có thể nhận được thông báo nhiều lần về cùng một mã sự kiện. Không có hạn chế cụ thể nào đối với trình xử lý, cụ thể là trình xử lý có thể huỷ đăng ký các mã sự kiện bên ngoài.
Nếu đối tượng sự kiện bên ngoài bị loại khỏi vùng đệm nhật ký, thì nhà cung cấp bên ngoài sẽ nhận được thông báo cùng với bản sao của đối tượng sự kiện bên ngoài.
Con trỏ đến cấu trúc ExternalEvents (Sự kiện bên ngoài) sẽ có giá trị là NULL nếu không thành công. Nếu không, con trỏ sẽ được điền sẵn bằng mã sự kiện bắt đầu và kết thúc được chỉ định cho lệnh gọi lại. Con trỏ này phải được dùng để huỷ đăng ký tập hợp các sự kiện.
Hãy xem tài liệu về FetchExternalEventsFunct để biết thông tin chi tiết về những gì lệnh gọi lại phải triển khai.
Thông tin chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||||
Giá trị trả về |
|
RegisterEventCallbackForImportance
WEAVE_ERROR RegisterEventCallbackForImportance( ImportanceType inImportance, FetchExternalEventsFunct inFetchCallback, NotifyExternalEventsDeliveredFunct inNotifyCallback, size_t inNumEvents, event_id_t *outLastEventID )
API công khai để đăng ký một nhóm sự kiện được lưu trữ bên ngoài.
Đăng ký lệnh gọi lại của biểu mẫu FetchExternalEventsFunct. API này yêu cầu nền tảng phải biết số lượng sự kiện khi đăng ký. Các hoạt động nội bộ cũng yêu cầu số này không đổi. Vì API này không cho phép nền tảng đăng ký mã sự kiện cụ thể, nên điều này ngăn nền tảng lưu trữ sự kiện lâu dài (ít nhất là với mã sự kiện duy nhất).
Lệnh gọi lại sẽ được gọi mỗi khi người đăng ký cố gắng tìm nạp mã sự kiện trong phạm vi bất kỳ số lần cho đến khi người đăng ký bị huỷ đăng ký.
Bạn nên sử dụng biến thể này của hàm khi nhà cung cấp bên ngoài muốn nhận thông báo khi các sự kiện đã được phân phối tới người đăng ký, chứ không phải khi đối tượng sự kiện bên ngoài bị loại. Khi các sự kiện được phân phối, nhà cung cấp bên ngoài sẽ được thông báo về điều đó cùng với mã nhận dạng nút của người nhận và mã của sự kiện cuối cùng đã gửi tới người nhận đó. Xin lưu ý rằng nhà cung cấp bên ngoài có thể nhận được thông báo nhiều lần về cùng một mã sự kiện. Không có hạn chế cụ thể nào đối với trình xử lý, cụ thể là trình xử lý có thể huỷ đăng ký các mã sự kiện bên ngoài.
Con trỏ đến cấu trúc ExternalEvents (Sự kiện bên ngoài) sẽ có giá trị là NULL nếu không thành công. Nếu không, con trỏ sẽ được điền sẵn bằng mã sự kiện bắt đầu và kết thúc được chỉ định cho lệnh gọi lại. Con trỏ này phải được dùng để huỷ đăng ký tập hợp các sự kiện.
Hãy xem tài liệu về FetchExternalEventsFunct để biết thông tin chi tiết về những gì lệnh gọi lại phải triển khai.
Thông tin chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||
Giá trị trả về |
|
RegisterEventCallbackForImportance
WEAVE_ERROR RegisterEventCallbackForImportance( ImportanceType inImportance, FetchExternalEventsFunct inFetchCallback, size_t inNumEvents, event_id_t *outLastEventID )
API công khai để đăng ký một nhóm sự kiện được lưu trữ bên ngoài.
Đăng ký lệnh gọi lại của biểu mẫu FetchExternalEventsFunct. API này yêu cầu nền tảng phải biết số lượng sự kiện khi đăng ký. Các hoạt động nội bộ cũng yêu cầu số này không đổi. Vì API này không cho phép nền tảng đăng ký mã sự kiện cụ thể, nên điều này ngăn nền tảng lưu trữ sự kiện lâu dài (ít nhất là với mã sự kiện duy nhất).
Lệnh gọi lại sẽ được gọi mỗi khi người đăng ký cố gắng tìm nạp mã sự kiện trong phạm vi bất kỳ số lần cho đến khi người đăng ký bị huỷ đăng ký.
Bạn nên sử dụng biến thể này của hàm khi trình cung cấp bên ngoài không muốn nhận thông báo, dù sự kiện bên ngoài đã được phân phối hay khi đối tượng sự kiện bên ngoài bị loại.
Con trỏ đến cấu trúc ExternalEvents (Sự kiện bên ngoài) sẽ có giá trị là NULL nếu không thành công. Nếu không, con trỏ sẽ được điền sẵn bằng mã sự kiện bắt đầu và kết thúc được chỉ định cho lệnh gọi lại. Con trỏ này phải được dùng để huỷ đăng ký tập hợp các sự kiện.
Hãy xem tài liệu về FetchExternalEventsFunct để biết thông tin chi tiết về những gì lệnh gọi lại phải triển khai.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||
Giá trị trả về |
|
ScheduleFlushIfNeeded
WEAVE_ERROR ScheduleFlushIfNeeded( bool inFlushRequested )
Lên lịch cho tác vụ giảm tải nhật ký.
Hàm này sẽ quyết định xem có lên lịch cho quá trình giảm tải tác vụ hay không. Nếu có, hàm này sẽ lên lịch để chạy không đồng bộ LoggingFlushHandler
trên luồng Weave.
Quyết định lên lịch đẩy dữ liệu phụ thuộc vào ba yếu tố:
một yêu cầu rõ ràng để đẩy dữ liệu vùng đệm
trạng thái của vùng đệm sự kiện và lượng dữ liệu chưa được đồng bộ hoá với đối tượng sử dụng sự kiện
liệu có sự kiện yêu cầu xoá yêu cầu đang chờ xử lý nào hay không.
Yêu cầu rõ ràng để lên lịch xả được truyền qua tham số đầu vào.
Quá trình tự động xả dữ liệu thường được lên lịch khi các vùng đệm sự kiện chứa đủ dữ liệu để đáng bắt đầu một lượt giảm tải mới. Ngoài ra, chúng tôi cũng có thể tính đến các điều kiện kích hoạt bổ sung như thời gian tối thiểu và tối đa giữa các lần giảm tải, tuỳ thuộc vào chiến lược giảm tải.
Biến mUploadRequested
biểu thị trạng thái đang chờ xử lý của nhật ký sự kiện. Vì hàm này có thể được gọi qua nhiều luồng, nên mUploadRequested
phải được đọc và thiết lập tỉ mỉ để tránh việc lên lịch LoggingFlushHandler
thừa trước khi gửi thông báo.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
SerializeEvents
WEAVE_ERROR SerializeEvents( TLVWriter & writer )
Chuyển đổi tuần tự các sự kiện Weave thuộc mọi loại mức độ quan trọng.
Chuyển đổi tuần tự các sự kiện trong WeaveCircularTLVBuffer và các trạng thái liên quan vào vùng đệm đã cung cấp.
Phương thức này dành cho các thiết bị không giữ lại RAM trong khi ngủ, cho phép các thiết bị duy trì sự kiện trước khi ngủ và do đó ngăn chặn việc mất sự kiện
SetBDXUploader
void SetBDXUploader( LogBDXUpload *inUploader )
SetExchangeManager
WEAVE_ERROR SetExchangeManager( nl::Weave::WeaveExchangeManager *inMgr )
Thiết lập để WeaveExchangeManager được dùng với hệ thống phụ ghi nhật ký này.
Trên một số nền tảng, thao tác này có thể cần thực hiện riêng biệt với CreateLoggingManagement() ở trên.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
SetLoggingEndpoint
WEAVE_ERROR SetLoggingEndpoint( event_id_t *inEventEndpoints, size_t inNumImportanceLevels, size_t & outLoggingPosition )
SkipEvent
void SkipEvent( EventLoadOutContext *aContext )
Hàm trợ giúp bỏ qua thao tác ghi một sự kiện tương ứng với mã sự kiện được phân bổ.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
ThrottleLogger
void ThrottleLogger( void )
ThrottleLogger nâng cấp độ ghi nhật ký hiệu quả lên cấp độ Sản xuất.
UnregisterEventCallbackForImportance
void UnregisterEventCallbackForImportance( ImportanceType inImportance, event_id_t inEventID )
API công khai để huỷ đăng ký một nhóm các sự kiện được lưu trữ bên ngoài.
Việc huỷ đăng ký lệnh gọi lại sẽ ngăn LoggingManagement gọi lệnh gọi lại cho một nhóm sự kiện. LoggingManagement sẽ không còn gửi các mã sự kiện đó cho người đăng ký nữa.
Mục đích là để một hàm phân phát một nhóm sự kiện tại một thời điểm. Nếu cần đăng ký một tập hợp sự kiện mới bằng cùng một hàm, thì trước tiên, bạn phải huỷ đăng ký lệnh gọi lại rồi đăng ký lại. Điều này có nghĩa là Google không thể tìm nạp nhóm sự kiện ban đầu nữa.
Hàm này thành công vô điều kiện. Nếu lệnh gọi lại chưa từng được đăng ký hoặc đã bị huỷ đăng ký, thì lệnh gọi lại đó không hoạt động.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
UnthrottleLogger
void UnthrottleLogger( void )
UnthrottleLogger khôi phục cấp độ ghi nhật ký hiệu quả về cấp độ ghi nhật ký đã định cấu hình.
Hàm tĩnh công khai
CreateLoggingManagement
void CreateLoggingManagement( nl::Weave::WeaveExchangeManager *inMgr, size_t inNumBuffers, const LogStorageResources *const inLogStorageResources )
Tạo đối tượng LoggingManagement và khởi chạy hệ thống con quản lý nhật ký bằng các tài nguyên được cung cấp.
Khởi động LoggingManagement bằng một mảng LogStorageResources. Mảng phải cung cấp tài nguyên cho từng mức độ quan trọng hợp lệ, các phần tử của mảng phải có giá trị dạng số tăng dần (và theo mức độ quan trọng giảm dần); phần tử đầu tiên trong mảng tương ứng với tài nguyên được phân bổ cho những sự kiện quan trọng nhất và phần tử cuối cùng tương ứng với các sự kiện ít quan trọng nhất.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
DestroyLoggingManagement
void DestroyLoggingManagement( void )
Thực hiện mọi hành động chúng tôi cần khi tắt tính năng này.