~~NOTOC~~
[[log_management_api]] > [[BS2_GetFilteredLogFromDir]]
----
===== BS2_GetFilteredLogFromDir=====
Gets all the log records that matches the given condition from storage path in device.
==== Declaration ====
#include "BS_API.h"
int BS2_GetFilteredLogFromDir(void* context, const char* szDir, char* uid, BS2_EVENT_CODE eventCode, BS2_TIMESTAMP start, BS2_TIMESTAMP end, uint8_t tnakey, BS2Event** logsObj, uint32_t* numLog);
[[Log_Management_API#BS2Event|See BS2Event Structure]]
==== Parameter ====
* [In] ''//context//'' : Context
* [In] ''//szDir//'' : Storage path in device
* [In] ''//uid//'' : User ID. When the value is NULL, it means all users.
* [In] ''//eventCode//'' : Log event code. When the value is 0, it means all events.
* [In] ''//start//'' : Filtered search start time. When the value is 0, it means there are no limitations.
* [In] ''//end//'' : Filtered search end time. When the value is 0, it means there are no limitations.
* [In] ''//tnakey//'' : TNA key. When the value is 0, it means all TNA keys.
* [Out] ''//logsObj//'' : Pointer to store the log record's address.
* [Out] ''//numLog//'' : Number of log record.
**NOTE**\\
The logsObj variable needs to return the memory to the system by the [[BS2_ReleaseObject]] function after being used.
==== Return Value ====
If successfully done, ''BS_SDK_SUCCESS'' will be returned. \\
If there is an error, the corresponding error code will be returned.
\\
==== See Also ====
[[BS2_AllocateUsbContext]]\\ [[BS2_ReleaseUsbContext]]\\ [[BS2_GetUserDatabaseInfoFromDir]]\\ [[BS2_GetUserListFromDir]]\\ [[BS2_GetUserInfosFromDir]]\\ [[BS2_GetUserDatasFromDir]]\\ [[BS2_GetUserInfosExFromDir]]\\ [[BS2_GetUserDatasExFromDir]]\\ [[BS2_GetLogFromDir]]\\ [[BS2_GetLogBlobFromDir]]