| 84 | } |
| 85 | |
| 86 | function buildFilterString(filter: AuditLogFilter): string { |
| 87 | const parts: string[] = []; |
| 88 | if (filter.method) parts.push(`method == "${filter.method}"`); |
| 89 | if (filter.level !== undefined) |
| 90 | parts.push(`severity == "${AuditLog_Severity[filter.level]}"`); |
| 91 | if (filter.userEmail) |
| 92 | parts.push(`user == "${userNamePrefix}${filter.userEmail}"`); |
| 93 | if (filter.createdTsAfter) |
| 94 | parts.push( |
| 95 | `create_time >= "${dayjs(filter.createdTsAfter).utc().format()}"` |
| 96 | ); |
| 97 | if (filter.createdTsBefore) |
| 98 | parts.push( |
| 99 | `create_time <= "${dayjs(filter.createdTsBefore).utc().format()}"` |
| 100 | ); |
| 101 | return parts.join(" && "); |
| 102 | } |
| 103 | |
| 104 | function buildAuditLogFilter(params: SearchParams): AuditLogFilter { |
| 105 | const filter: AuditLogFilter = {}; |