1 /* 2 * Copyright (C) 2021 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package android.car.builtin.util; 18 19 import android.annotation.Nullable; 20 import android.annotation.SystemApi; 21 import android.util.EventLog; 22 23 /** 24 * Helper for {@link EventLog} 25 * 26 * @hide 27 */ 28 @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) 29 public final class EventLogHelper { writeCarHelperStart()30 public static void writeCarHelperStart() { 31 EventLog.writeEvent(EventLogTags.CAR_HELPER_START); 32 } 33 writeCarHelperBootPhase(int phase)34 public static void writeCarHelperBootPhase(int phase) { 35 EventLog.writeEvent(EventLogTags.CAR_HELPER_BOOT_PHASE, phase); 36 } 37 writeCarHelperUserStarting(int userId)38 public static void writeCarHelperUserStarting(int userId) { 39 EventLog.writeEvent(EventLogTags.CAR_HELPER_USER_STARTING, userId); 40 } 41 writeCarHelperUserSwitching(int fromUserId, int toUserId)42 public static void writeCarHelperUserSwitching(int fromUserId, int toUserId) { 43 EventLog.writeEvent(EventLogTags.CAR_HELPER_USER_SWITCHING, fromUserId, toUserId); 44 } 45 writeCarHelperUserUnlocking(int userId)46 public static void writeCarHelperUserUnlocking(int userId) { 47 EventLog.writeEvent(EventLogTags.CAR_HELPER_USER_UNLOCKING, userId); 48 } 49 writeCarHelperUserUnlocked(int userId)50 public static void writeCarHelperUserUnlocked(int userId) { 51 EventLog.writeEvent(EventLogTags.CAR_HELPER_USER_UNLOCKED, userId); 52 } 53 writeCarHelperUserStopping(int userId)54 public static void writeCarHelperUserStopping(int userId) { 55 EventLog.writeEvent(EventLogTags.CAR_HELPER_USER_STOPPING, userId); 56 } 57 writeCarHelperUserStopped(int userId)58 public static void writeCarHelperUserStopped(int userId) { 59 EventLog.writeEvent(EventLogTags.CAR_HELPER_USER_STOPPED, userId); 60 } 61 writeCarHelperWatchdogAnrKill()62 public static void writeCarHelperWatchdogAnrKill() { 63 EventLog.writeEvent(EventLogTags.CAR_HELPER_WATCHDOG_ANR_KILL); 64 } 65 writeCarHelperServiceConnected()66 public static void writeCarHelperServiceConnected() { 67 EventLog.writeEvent(EventLogTags.CAR_HELPER_SVC_CONNECTED); 68 } 69 writeCarServiceInit(int numberServices)70 public static void writeCarServiceInit(int numberServices) { 71 EventLog.writeEvent(EventLogTags.CAR_SERVICE_INIT, numberServices); 72 } 73 writeCarServiceVhalReconnected(int numberServices)74 public static void writeCarServiceVhalReconnected(int numberServices) { 75 EventLog.writeEvent(EventLogTags.CAR_SERVICE_VHAL_RECONNECTED, numberServices); 76 } 77 writeCarServiceSetCarServiceHelper(int pid)78 public static void writeCarServiceSetCarServiceHelper(int pid) { 79 EventLog.writeEvent(EventLogTags.CAR_SERVICE_SET_CAR_SERVICE_HELPER, pid); 80 } 81 writeCarServiceOnUserLifecycle(int type, int fromUserId, int toUserId)82 public static void writeCarServiceOnUserLifecycle(int type, int fromUserId, int toUserId) { 83 EventLog.writeEvent(EventLogTags.CAR_SERVICE_ON_USER_LIFECYCLE, type, fromUserId, toUserId); 84 } 85 writeCarServiceCreate(boolean hasVhal)86 public static void writeCarServiceCreate(boolean hasVhal) { 87 EventLog.writeEvent(EventLogTags.CAR_SERVICE_CREATE, hasVhal ? 1 : 0); 88 } 89 writeCarServiceConnected(@ullable String interfaceName)90 public static void writeCarServiceConnected(@Nullable String interfaceName) { 91 EventLog.writeEvent(EventLogTags.CAR_SERVICE_CONNECTED, interfaceName); 92 } 93 writeCarServiceDestroy(boolean hasVhal)94 public static void writeCarServiceDestroy(boolean hasVhal) { 95 EventLog.writeEvent(EventLogTags.CAR_SERVICE_DESTROY, hasVhal ? 1 : 0); 96 } 97 writeCarServiceVhalDied(long cookie)98 public static void writeCarServiceVhalDied(long cookie) { 99 EventLog.writeEvent(EventLogTags.CAR_SERVICE_VHAL_DIED, cookie); 100 } 101 writeCarServiceInitBootUser()102 public static void writeCarServiceInitBootUser() { 103 EventLog.writeEvent(EventLogTags.CAR_SERVICE_INIT_BOOT_USER); 104 } 105 writeCarServiceOnUserRemoved(int userId)106 public static void writeCarServiceOnUserRemoved(int userId) { 107 EventLog.writeEvent(EventLogTags.CAR_SERVICE_ON_USER_REMOVED, userId); 108 } 109 writeCarUserServiceInitialUserInfoReq(int requestType, int timeout, int currentUserId, int currentUserFlags, int numberExistingUsers)110 public static void writeCarUserServiceInitialUserInfoReq(int requestType, int timeout, 111 int currentUserId, int currentUserFlags, int numberExistingUsers) { 112 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_INITIAL_USER_INFO_REQ, requestType, timeout, 113 currentUserId, currentUserFlags, numberExistingUsers); 114 } 115 writeCarUserServiceInitialUserInfoResp(int status, int action, int userId, int flags, @Nullable String safeName, @Nullable String userLocales)116 public static void writeCarUserServiceInitialUserInfoResp(int status, int action, int userId, 117 int flags, @Nullable String safeName, @Nullable String userLocales) { 118 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_INITIAL_USER_INFO_RESP, status, action, 119 userId, flags, safeName, userLocales); 120 } 121 writeCarUserServiceSetInitialUser(int userId)122 public static void writeCarUserServiceSetInitialUser(int userId) { 123 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_SET_INITIAL_USER, userId); 124 } 125 writeCarUserServiceSetLifecycleListener(int uid, @Nullable String packageName)126 public static void writeCarUserServiceSetLifecycleListener(int uid, 127 @Nullable String packageName) { 128 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_SET_LIFECYCLE_LISTENER, uid, packageName); 129 } 130 writeCarUserServiceResetLifecycleListener(int uid, @Nullable String packageName)131 public static void writeCarUserServiceResetLifecycleListener(int uid, 132 @Nullable String packageName) { 133 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_RESET_LIFECYCLE_LISTENER, uid, packageName); 134 } 135 writeCarUserServiceSwitchUserReq(int userId, int timeout)136 public static void writeCarUserServiceSwitchUserReq(int userId, int timeout) { 137 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_SWITCH_USER_REQ, userId, timeout); 138 } 139 writeCarUserServiceSwitchUserResp(int halCallbackStatus, int userSwitchStatus, @Nullable String errorMessage)140 public static void writeCarUserServiceSwitchUserResp(int halCallbackStatus, 141 int userSwitchStatus, @Nullable String errorMessage) { 142 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_SWITCH_USER_RESP, halCallbackStatus, 143 userSwitchStatus, errorMessage); 144 } 145 146 /** 147 * Logs a {@code EventLogTags.CAR_USER_SVC_LOGOUT_USER_REQ} event. 148 */ writeCarUserServiceLogoutUserReq(int userId, int timeout)149 public static void writeCarUserServiceLogoutUserReq(int userId, int timeout) { 150 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_LOGOUT_USER_REQ, userId, timeout); 151 } 152 153 /** 154 * Logs a {@code EventLogTags.CAR_USER_SVC_LOGOUT_USER_RESP} event. 155 */ writeCarUserServiceLogoutUserResp(int halCallbackStatus, int userSwitchStatus, @Nullable String errorMessage)156 public static void writeCarUserServiceLogoutUserResp(int halCallbackStatus, 157 int userSwitchStatus, @Nullable String errorMessage) { 158 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_LOGOUT_USER_RESP, halCallbackStatus, 159 userSwitchStatus, errorMessage); 160 } writeCarUserServicePostSwitchUserReq(int targetUserId, int currentUserId)161 public static void writeCarUserServicePostSwitchUserReq(int targetUserId, int currentUserId) { 162 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_POST_SWITCH_USER_REQ, targetUserId, 163 currentUserId); 164 } 165 writeCarUserServiceGetUserAuthReq(int uid, int userId, int numberTypes)166 public static void writeCarUserServiceGetUserAuthReq(int uid, int userId, int numberTypes) { 167 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_GET_USER_AUTH_REQ, uid, userId, numberTypes); 168 } 169 writeCarUserServiceGetUserAuthResp(int numberValues)170 public static void writeCarUserServiceGetUserAuthResp(int numberValues) { 171 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_GET_USER_AUTH_RESP, numberValues); 172 } 173 writeCarUserServiceSwitchUserUiReq(int userId)174 public static void writeCarUserServiceSwitchUserUiReq(int userId) { 175 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_SWITCH_USER_UI_REQ, userId); 176 } 177 writeCarUserServiceSwitchUserFromHalReq(int requestId, int uid)178 public static void writeCarUserServiceSwitchUserFromHalReq(int requestId, int uid) { 179 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_SWITCH_USER_FROM_HAL_REQ, requestId, uid); 180 } 181 writeCarUserServiceSetUserAuthReq(int uid, int userId, int numberAssociations)182 public static void writeCarUserServiceSetUserAuthReq(int uid, int userId, 183 int numberAssociations) { 184 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_SET_USER_AUTH_REQ, uid, userId, 185 numberAssociations); 186 } 187 writeCarUserServiceSetUserAuthResp(int numberValues, @Nullable String errorMessage)188 public static void writeCarUserServiceSetUserAuthResp(int numberValues, 189 @Nullable String errorMessage) { 190 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_SET_USER_AUTH_RESP, numberValues, 191 errorMessage); 192 } 193 writeCarUserServiceCreateUserReq(@ullable String safeName, @Nullable String userType, int flags, int timeout, int hasCallerRestrictions)194 public static void writeCarUserServiceCreateUserReq(@Nullable String safeName, 195 @Nullable String userType, int flags, int timeout, int hasCallerRestrictions) { 196 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_CREATE_USER_REQ, safeName, userType, flags, 197 timeout, hasCallerRestrictions); 198 } 199 writeCarUserServiceCreateUserResp(int status, int result, @Nullable String errorMessage)200 public static void writeCarUserServiceCreateUserResp(int status, int result, 201 @Nullable String errorMessage) { 202 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_CREATE_USER_RESP, status, result, 203 errorMessage); 204 } 205 writeCarUserServiceCreateUserUserCreated(int userId, @Nullable String safeName, @Nullable String userType, int flags)206 public static void writeCarUserServiceCreateUserUserCreated(int userId, 207 @Nullable String safeName, @Nullable String userType, int flags) { 208 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_CREATE_USER_USER_CREATED, userId, safeName, 209 userType, flags); 210 } 211 writeCarUserServiceCreateUserUserRemoved(int userId, @Nullable String reason)212 public static void writeCarUserServiceCreateUserUserRemoved(int userId, 213 @Nullable String reason) { 214 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_CREATE_USER_USER_REMOVED, userId, reason); 215 } 216 writeCarUserServiceRemoveUserReq(int userId, int hascallerrestrictions)217 public static void writeCarUserServiceRemoveUserReq(int userId, int hascallerrestrictions) { 218 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_REMOVE_USER_REQ, userId, 219 hascallerrestrictions); 220 } 221 writeCarUserServiceRemoveUserResp(int userId, int result)222 public static void writeCarUserServiceRemoveUserResp(int userId, int result) { 223 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_REMOVE_USER_RESP, userId, result); 224 } 225 writeCarUserServiceNotifyAppLifecycleListener(int uid, @Nullable String packageName, int eventType, int fromUserId, int toUserId)226 public static void writeCarUserServiceNotifyAppLifecycleListener(int uid, 227 @Nullable String packageName, int eventType, int fromUserId, int toUserId) { 228 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_NOTIFY_APP_LIFECYCLE_LISTENER, uid, 229 packageName, eventType, fromUserId, toUserId); 230 } 231 writeCarUserServiceNotifyInternalLifecycleListener( @ullable String listenerName, int eventType, int fromUserId, int toUserId)232 public static void writeCarUserServiceNotifyInternalLifecycleListener( 233 @Nullable String listenerName, int eventType, int fromUserId, int toUserId) { 234 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_NOTIFY_INTERNAL_LIFECYCLE_LISTENER, 235 listenerName, eventType, fromUserId, toUserId); 236 } 237 writeCarUserServicePreCreationRequested(int numberUsers, int numberGuests)238 public static void writeCarUserServicePreCreationRequested(int numberUsers, int numberGuests) { 239 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_PRE_CREATION_REQUESTED, numberUsers, 240 numberGuests); 241 } 242 writeCarUserServicePreCreationStatus(int numberExistingUsers, int numberUsersToAdd, int numberUsersToRemove, int numberExistingGuests, int numberGuestsToAdd, int numberGuestsToRemove, int numberInvalidUsersToRemove)243 public static void writeCarUserServicePreCreationStatus(int numberExistingUsers, 244 int numberUsersToAdd, int numberUsersToRemove, int numberExistingGuests, 245 int numberGuestsToAdd, int numberGuestsToRemove, int numberInvalidUsersToRemove) { 246 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_PRE_CREATION_STATUS, numberExistingUsers, 247 numberUsersToAdd, numberUsersToRemove, numberExistingGuests, numberGuestsToAdd, 248 numberGuestsToRemove, numberInvalidUsersToRemove); 249 } 250 writeCarUserServiceStartUserInBackgroundReq(int userId)251 public static void writeCarUserServiceStartUserInBackgroundReq(int userId) { 252 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_START_USER_IN_BACKGROUND_REQ, userId); 253 } 254 writeCarUserServiceStartUserInBackgroundResp(int userId, int result)255 public static void writeCarUserServiceStartUserInBackgroundResp(int userId, int result) { 256 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_START_USER_IN_BACKGROUND_RESP, userId, 257 result); 258 } 259 260 /** Logs a {@code EventLogTags.CAR_USER_SVC_START_USER_VISIBLE_ON_DISPLAY_REQ} event. */ writeCarUserServiceStartUserVisibleOnDisplayReq(int userId, int displayId)261 public static void writeCarUserServiceStartUserVisibleOnDisplayReq(int userId, int displayId) { 262 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_START_USER_VISIBLE_ON_DISPLAY_REQ, 263 userId, displayId); 264 } 265 266 /** Logs a {@code EventLogTags.CAR_USER_SVC_START_USER_VISIBLE_ON_DISPLAY_RESP} event. */ writeCarUserServiceStartUserVisibleOnDisplayResp( int userId, int displayId, int result)267 public static void writeCarUserServiceStartUserVisibleOnDisplayResp( 268 int userId, int displayId, int result) { 269 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_START_USER_VISIBLE_ON_DISPLAY_RESP, 270 userId, displayId, result); 271 } 272 writeCarUserServiceStopUserReq(int userId)273 public static void writeCarUserServiceStopUserReq(int userId) { 274 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_STOP_USER_REQ, userId); 275 } 276 writeCarUserServiceStopUserResp(int userId, int result)277 public static void writeCarUserServiceStopUserResp(int userId, int result) { 278 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_STOP_USER_RESP, userId, result); 279 } 280 writeCarUserServiceInitialUserInfoReqComplete(int requestType)281 public static void writeCarUserServiceInitialUserInfoReqComplete(int requestType) { 282 EventLog.writeEvent(EventLogTags.CAR_USER_SVC_INITIAL_USER_INFO_REQ_COMPLETE, requestType); 283 } 284 writeCarUserHalInitialUserInfoReq(int requestId, int requestType, int timeout)285 public static void writeCarUserHalInitialUserInfoReq(int requestId, int requestType, 286 int timeout) { 287 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_INITIAL_USER_INFO_REQ, requestId, requestType, 288 timeout); 289 } 290 writeCarUserHalInitialUserInfoResp(int requestId, int status, int action, int userId, int flags, @Nullable String safeName, @Nullable String userLocales)291 public static void writeCarUserHalInitialUserInfoResp(int requestId, int status, int action, 292 int userId, int flags, @Nullable String safeName, @Nullable String userLocales) { 293 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_INITIAL_USER_INFO_RESP, requestId, status, 294 action, userId, flags, safeName, userLocales); 295 } 296 writeCarInitialUserStartFgUser(int userId)297 public static void writeCarInitialUserStartFgUser(int userId) { 298 EventLog.writeEvent(EventLogTags.CAR_INITIAL_USER_START_FG_USER, userId); 299 } 300 writeCarInitialUserInfo(int type, boolean replaceGuest, int switchUserId, @Nullable String newUserName, int newUserFlags, boolean supportsOverrideUserIdProperty, @Nullable String userLocales)301 public static void writeCarInitialUserInfo(int type, boolean replaceGuest, 302 int switchUserId, @Nullable String newUserName, int newUserFlags, 303 boolean supportsOverrideUserIdProperty, @Nullable String userLocales) { 304 EventLog.writeEvent(EventLogTags.CAR_INITIAL_USER_INFO, type, replaceGuest ? 1 : 0, 305 switchUserId, 306 newUserName, newUserFlags, supportsOverrideUserIdProperty ? 1 : 0, userLocales); 307 } 308 writeCarInitialUserFallbackDefaultBehavior(@ullable String reason)309 public static void writeCarInitialUserFallbackDefaultBehavior(@Nullable String reason) { 310 EventLog.writeEvent(EventLogTags.CAR_INITIAL_USER_FALLBACK_DEFAULT_BEHAVIOR, reason); 311 } 312 writeCarInitialUserReplaceGuest(int userId)313 public static void writeCarInitialUserReplaceGuest(int userId) { 314 EventLog.writeEvent(EventLogTags.CAR_INITIAL_USER_REPLACE_GUEST, userId); 315 } 316 writeCarInitialUserUnlockSystemUser()317 public static void writeCarInitialUserUnlockSystemUser() { 318 EventLog.writeEvent(EventLogTags.CAR_INITIAL_USER_UNLOCK_SYSTEM_USER); 319 } 320 writeCarInitialUserSetLastActive(int userId)321 public static void writeCarInitialUserSetLastActive(int userId) { 322 EventLog.writeEvent(EventLogTags.CAR_INITIAL_USER_SET_LAST_ACTIVE, userId); 323 } 324 writeCarInitialUserResetGlobalProperty(@ullable String name)325 public static void writeCarInitialUserResetGlobalProperty(@Nullable String name) { 326 EventLog.writeEvent(EventLogTags.CAR_INITIAL_USER_RESET_GLOBAL_PROPERTY, name); 327 } 328 writeCarUserHalSwitchUserReq(int requestId, int userId, int userFlags, int timeout)329 public static void writeCarUserHalSwitchUserReq(int requestId, int userId, int userFlags, 330 int timeout) { 331 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_SWITCH_USER_REQ, requestId, userId, userFlags, 332 timeout); 333 } 334 writeCarUserHalSwitchUserResp(int requestId, int status, int result, @Nullable String errorMessage)335 public static void writeCarUserHalSwitchUserResp(int requestId, int status, int result, 336 @Nullable String errorMessage) { 337 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_SWITCH_USER_RESP, requestId, status, result, 338 errorMessage); 339 } 340 writeCarUserHalPostSwitchUserReq(int requestId, int targetUserId, int currentUserId)341 public static void writeCarUserHalPostSwitchUserReq(int requestId, int targetUserId, 342 int currentUserId) { 343 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_POST_SWITCH_USER_REQ, requestId, targetUserId, 344 currentUserId); 345 } 346 writeCarUserHalGetUserAuthReq(@ullable Object[] int32Values)347 public static void writeCarUserHalGetUserAuthReq(@Nullable Object[] int32Values) { 348 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_GET_USER_AUTH_REQ, int32Values); 349 } 350 writeCarUserHalGetUserAuthResp(@ullable Object[] valuesAndError)351 public static void writeCarUserHalGetUserAuthResp(@Nullable Object[] valuesAndError) { 352 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_GET_USER_AUTH_RESP, valuesAndError); 353 } 354 writeCarUserHalLegacySwitchUserReq(int requestId, int targetUserId, int currentUserId)355 public static void writeCarUserHalLegacySwitchUserReq(int requestId, int targetUserId, 356 int currentUserId) { 357 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_LEGACY_SWITCH_USER_REQ, requestId, 358 targetUserId, currentUserId); 359 } 360 writeCarUserHalSetUserAuthReq(@ullable Object[] int32Values)361 public static void writeCarUserHalSetUserAuthReq(@Nullable Object[] int32Values) { 362 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_SET_USER_AUTH_REQ, int32Values); 363 } 364 writeCarUserHalSetUserAuthResp(@ullable Object[] valuesAndError)365 public static void writeCarUserHalSetUserAuthResp(@Nullable Object[] valuesAndError) { 366 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_SET_USER_AUTH_RESP, valuesAndError); 367 } 368 writeCarUserHalOemSwitchUserReq(int requestId, int targetUserId)369 public static void writeCarUserHalOemSwitchUserReq(int requestId, int targetUserId) { 370 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_OEM_SWITCH_USER_REQ, requestId, targetUserId); 371 } 372 writeCarUserHalCreateUserReq(int requestId, @Nullable String safeName, int flags, int timeout)373 public static void writeCarUserHalCreateUserReq(int requestId, @Nullable String safeName, 374 int flags, int timeout) { 375 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_CREATE_USER_REQ, requestId, safeName, flags, 376 timeout); 377 } 378 writeCarUserHalCreateUserResp(int requestId, int status, int result, @Nullable String errorMessage)379 public static void writeCarUserHalCreateUserResp(int requestId, int status, int result, 380 @Nullable String errorMessage) { 381 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_CREATE_USER_RESP, requestId, status, result, 382 errorMessage); 383 } 384 writeCarUserHalRemoveUserReq(int targetUserId, int currentUserId)385 public static void writeCarUserHalRemoveUserReq(int targetUserId, int currentUserId) { 386 EventLog.writeEvent(EventLogTags.CAR_USER_HAL_REMOVE_USER_REQ, targetUserId, currentUserId); 387 } 388 389 /** Logs a {@code EventLogTags.CAR_USER_MGR_ADD_LISTENER} event. */ writeCarUserManagerAddListener(int uid, @Nullable String packageName, boolean hasFilter)390 public static void writeCarUserManagerAddListener(int uid, @Nullable String packageName, 391 boolean hasFilter) { 392 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_ADD_LISTENER, uid, packageName, 393 hasFilter ? 1 : 0); 394 } 395 writeCarUserManagerRemoveListener(int uid, @Nullable String packageName)396 public static void writeCarUserManagerRemoveListener(int uid, @Nullable String packageName) { 397 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_REMOVE_LISTENER, uid, packageName); 398 } 399 writeCarUserManagerDisconnected(int uid)400 public static void writeCarUserManagerDisconnected(int uid) { 401 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_DISCONNECTED, uid); 402 } 403 writeCarUserManagerSwitchUserReq(int uid, int userId)404 public static void writeCarUserManagerSwitchUserReq(int uid, int userId) { 405 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_SWITCH_USER_REQ, uid, userId); 406 } 407 writeCarUserManagerSwitchUserResp(int uid, int status, @Nullable String errorMessage)408 public static void writeCarUserManagerSwitchUserResp(int uid, int status, 409 @Nullable String errorMessage) { 410 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_SWITCH_USER_RESP, uid, status, errorMessage); 411 } 412 413 /** 414 * Logs a {@code EventLogTags.CAR_USER_MGR_LOGOUT_USER_REQ} event. 415 */ writeCarUserManagerLogoutUserReq(int uid)416 public static void writeCarUserManagerLogoutUserReq(int uid) { 417 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_LOGOUT_USER_REQ, uid); 418 } 419 420 /** 421 * Logs a {@code EventLogTags.CAR_USER_MGR_LOGOUT_USER_RESP} event. 422 */ writeCarUserManagerLogoutUserResp(int uid, int status, @Nullable String errorMessage)423 public static void writeCarUserManagerLogoutUserResp(int uid, int status, 424 @Nullable String errorMessage) { 425 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_LOGOUT_USER_RESP, uid, status, errorMessage); 426 } 427 writeCarUserManagerGetUserAuthReq(@ullable Object[] types)428 public static void writeCarUserManagerGetUserAuthReq(@Nullable Object[] types) { 429 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_GET_USER_AUTH_REQ, types); 430 } 431 writeCarUserManagerGetUserAuthResp(@ullable Object[] values)432 public static void writeCarUserManagerGetUserAuthResp(@Nullable Object[] values) { 433 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_GET_USER_AUTH_RESP, values); 434 } 435 writeCarUserManagerSetUserAuthReq(@ullable Object[] typesAndValuesPairs)436 public static void writeCarUserManagerSetUserAuthReq(@Nullable Object[] typesAndValuesPairs) { 437 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_SET_USER_AUTH_REQ, typesAndValuesPairs); 438 } 439 writeCarUserManagerSetUserAuthResp(@ullable Object[] values)440 public static void writeCarUserManagerSetUserAuthResp(@Nullable Object[] values) { 441 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_SET_USER_AUTH_RESP, values); 442 } 443 writeCarUserManagerCreateUserReq(int uid, @Nullable String safeName, @Nullable String userType, int flags)444 public static void writeCarUserManagerCreateUserReq(int uid, @Nullable String safeName, 445 @Nullable String userType, int flags) { 446 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_CREATE_USER_REQ, uid, safeName, userType, 447 flags); 448 } 449 writeCarUserManagerCreateUserResp(int uid, int status, @Nullable String errorMessage)450 public static void writeCarUserManagerCreateUserResp(int uid, int status, 451 @Nullable String errorMessage) { 452 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_CREATE_USER_RESP, uid, status, errorMessage); 453 } 454 writeCarUserManagerRemoveUserReq(int uid, int userId)455 public static void writeCarUserManagerRemoveUserReq(int uid, int userId) { 456 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_REMOVE_USER_REQ, uid, userId); 457 } 458 writeCarUserManagerRemoveUserResp(int uid, int status)459 public static void writeCarUserManagerRemoveUserResp(int uid, int status) { 460 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_REMOVE_USER_RESP, uid, status); 461 } 462 463 /** Logs a {@code EventLogTags.CAR_USER_MGR_START_USER_REQ} event. */ writeCarUserManagerStartUserReq(int uid, int userId, int displayId)464 public static void writeCarUserManagerStartUserReq(int uid, int userId, int displayId) { 465 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_START_USER_REQ, uid, userId, displayId); 466 } 467 468 /** Logs a {@code EventLogTags.CAR_USER_MGR_START_USER_RESP} event. */ writeCarUserManagerStartUserResp( int uid, int userId, int displayId, int status)469 public static void writeCarUserManagerStartUserResp( 470 int uid, int userId, int displayId, int status) { 471 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_START_USER_RESP, 472 uid, userId, displayId, status); 473 } 474 475 /** Logs a {@code EventLogTags.CAR_USER_MGR_STOP_USER_REQ} event. */ writeCarUserManagerStopUserReq(int uid, int userId)476 public static void writeCarUserManagerStopUserReq(int uid, int userId) { 477 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_STOP_USER_REQ, uid, userId); 478 } 479 480 /** Logs a {@code EventLogTags.CAR_USER_MGR_STOP_USER_RESP} event. */ writeCarUserManagerStopUserResp(int uid, int userId, int status)481 public static void writeCarUserManagerStopUserResp(int uid, int userId, int status) { 482 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_STOP_USER_RESP, uid, userId, status); 483 } 484 writeCarUserManagerNotifyLifecycleListener(int numberListeners, int eventType, int fromUserId, int toUserId)485 public static void writeCarUserManagerNotifyLifecycleListener(int numberListeners, 486 int eventType, int fromUserId, int toUserId) { 487 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_NOTIFY_LIFECYCLE_LISTENER, numberListeners, 488 eventType, fromUserId, toUserId); 489 } 490 writeCarUserManagerPreCreateUserReq(int uid)491 public static void writeCarUserManagerPreCreateUserReq(int uid) { 492 EventLog.writeEvent(EventLogTags.CAR_USER_MGR_PRE_CREATE_USER_REQ, uid); 493 } 494 writeCarDevicePolicyManagerRemoveUserReq(int uid, int userId)495 public static void writeCarDevicePolicyManagerRemoveUserReq(int uid, int userId) { 496 EventLog.writeEvent(EventLogTags.CAR_DP_MGR_REMOVE_USER_REQ, uid, userId); 497 } 498 writeCarDevicePolicyManagerRemoveUserResp(int uid, int status)499 public static void writeCarDevicePolicyManagerRemoveUserResp(int uid, int status) { 500 EventLog.writeEvent(EventLogTags.CAR_DP_MGR_REMOVE_USER_RESP, uid, status); 501 } 502 writeCarDevicePolicyManagerCreateUserReq(int uid, @Nullable String safeName, int flags)503 public static void writeCarDevicePolicyManagerCreateUserReq(int uid, @Nullable String safeName, 504 int flags) { 505 EventLog.writeEvent(EventLogTags.CAR_DP_MGR_CREATE_USER_REQ, uid, safeName, flags); 506 } 507 writeCarDevicePolicyManagerCreateUserResp(int uid, int status)508 public static void writeCarDevicePolicyManagerCreateUserResp(int uid, int status) { 509 EventLog.writeEvent(EventLogTags.CAR_DP_MGR_CREATE_USER_RESP, uid, status); 510 } 511 writeCarDevicePolicyManagerStartUserInBackgroundReq(int uid, int userId)512 public static void writeCarDevicePolicyManagerStartUserInBackgroundReq(int uid, int userId) { 513 EventLog.writeEvent(EventLogTags.CAR_DP_MGR_START_USER_IN_BACKGROUND_REQ, uid, userId); 514 } 515 writeCarDevicePolicyManagerStartUserInBackgroundResp(int uid, int status)516 public static void writeCarDevicePolicyManagerStartUserInBackgroundResp(int uid, int status) { 517 EventLog.writeEvent(EventLogTags.CAR_DP_MGR_START_USER_IN_BACKGROUND_RESP, uid, status); 518 } 519 writeCarDevicePolicyManagerStopUserReq(int uid, int userId)520 public static void writeCarDevicePolicyManagerStopUserReq(int uid, int userId) { 521 EventLog.writeEvent(EventLogTags.CAR_DP_MGR_STOP_USER_REQ, uid, userId); 522 } 523 writeCarDevicePolicyManagerStopUserResp(int uid, int status)524 public static void writeCarDevicePolicyManagerStopUserResp(int uid, int status) { 525 EventLog.writeEvent(EventLogTags.CAR_DP_MGR_STOP_USER_RESP, uid, status); 526 } 527 writePowerPolicyChange(String policy)528 public static void writePowerPolicyChange(String policy) { 529 EventLog.writeEvent(EventLogTags.CAR_PWR_MGR_PWR_POLICY_CHANGE, policy); 530 } 531 writeCarPowerManagerStateChange(int state)532 public static void writeCarPowerManagerStateChange(int state) { 533 EventLog.writeEvent(EventLogTags.CAR_PWR_MGR_STATE_CHANGE, state); 534 } 535 writeCarPowerManagerStateRequest(int state, int param)536 public static void writeCarPowerManagerStateRequest(int state, int param) { 537 EventLog.writeEvent(EventLogTags.CAR_PWR_MGR_STATE_REQ, state, param); 538 } 539 writeGarageModeEvent(int status)540 public static void writeGarageModeEvent(int status) { 541 EventLog.writeEvent(EventLogTags.CAR_PWR_MGR_GARAGE_MODE, status); 542 } 543 writeCarWatchdogServiceIoOveruseKill(String packageName, int userId, long writtenFgBytes, long writtenBgBytes, long writtenGarageModeBytes, long thresholdFgBytes, long thresholdBgBytes, long thresholdGarageModeBytes, long timesKilled, boolean isPackageDisabled)544 public static void writeCarWatchdogServiceIoOveruseKill(String packageName, int userId, 545 long writtenFgBytes, long writtenBgBytes, long writtenGarageModeBytes, 546 long thresholdFgBytes, long thresholdBgBytes, long thresholdGarageModeBytes, 547 long timesKilled, boolean isPackageDisabled) { 548 EventLog.writeEvent(EventLogTags.CAR_WATCHDOG_SVC_IO_OVERUSE_KILL, packageName, userId, 549 writtenFgBytes, writtenBgBytes, writtenGarageModeBytes, thresholdFgBytes, 550 thresholdBgBytes, thresholdGarageModeBytes, timesKilled, isPackageDisabled ? 1 : 0); 551 } 552 EventLogHelper()553 private EventLogHelper() { 554 throw new UnsupportedOperationException(); 555 } 556 } 557