logd: filter on __android_log_is_loggable
(cherry pick from commit e59c469fa8
)
- Default level when not specified is ANDROID_LOG_VERBOSE
which is inert.
Bug: 20416721
Bug: 19544788
Bug: 17760225
Change-Id: Icc098e53dc47ceaaeb24ec42eb6f61d6430ec2f6
This commit is contained in:
parent
e9c9106fbb
commit
bd1ef90448
|
@ -140,8 +140,26 @@ int LogBuffer::log(log_id_t log_id, log_time realtime,
|
|||
if ((log_id >= LOG_ID_MAX) || (log_id < 0)) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
LogBufferElement *elem = new LogBufferElement(log_id, realtime,
|
||||
uid, pid, tid, msg, len);
|
||||
int prio = ANDROID_LOG_INFO;
|
||||
const char *tag = NULL;
|
||||
if (log_id == LOG_ID_EVENTS) {
|
||||
tag = android::tagToName(elem->getTag());
|
||||
} else {
|
||||
prio = *msg;
|
||||
tag = msg + 1;
|
||||
}
|
||||
if (!__android_log_is_loggable(prio, tag, ANDROID_LOG_VERBOSE)) {
|
||||
// Log traffic received to total
|
||||
pthread_mutex_lock(&mLogElementsLock);
|
||||
stats.add(elem);
|
||||
stats.subtract(elem);
|
||||
pthread_mutex_unlock(&mLogElementsLock);
|
||||
delete elem;
|
||||
return -EACCES;
|
||||
}
|
||||
|
||||
pthread_mutex_lock(&mLogElementsLock);
|
||||
|
||||
|
|
|
@ -105,8 +105,12 @@ char *android::tidToName(pid_t tid) {
|
|||
size_t LogBufferElement::populateDroppedMessage(char *&buffer,
|
||||
LogBuffer *parent) {
|
||||
static const char tag[] = "chatty";
|
||||
static const char format_uid[] = "uid=%u%s%s expire %u line%s";
|
||||
|
||||
if (!__android_log_is_loggable(ANDROID_LOG_INFO, tag, ANDROID_LOG_VERBOSE)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const char format_uid[] = "uid=%u%s%s expire %u line%s";
|
||||
char *name = parent->uidToName(mUid);
|
||||
char *commName = android::tidToName(mTid);
|
||||
if (!commName && (mTid != mPid)) {
|
||||
|
|
Loading…
Reference in New Issue