Add dashboard-specific secret and secret import audit logs, re-touch audit logs v2 UI

This commit is contained in:
Tuan Dang
2023-08-08 19:03:24 +07:00
parent 6cb8cf53f8
commit 0cad823267
19 changed files with 472 additions and 55 deletions
@@ -73,7 +73,7 @@ export const LogsFilter = ({
className="w-40 mr-4"
>
<Select
defaultValue={field.value}
{...(field.value ? { value: field.value } : { placeholder: "Select" })}
{...field}
onValueChange={(e) => onChange(e)}
className="w-full"
@@ -99,7 +99,7 @@ export const LogsFilter = ({
className="w-40 mr-4"
>
<Select
defaultValue={field.value}
{...(field.value ? { value: field.value } : { placeholder: "Select" })}
{...field}
onValueChange={(e) => onChange(e)}
className="w-full"
@@ -121,7 +121,7 @@ export const LogsFilter = ({
className="w-40 mr-4"
>
<Select
defaultValue={field.value}
{...(field.value ? { value: field.value } : { placeholder: "Select" })}
{...field}
onValueChange={(e) => onChange(e)}
className="w-full"
@@ -189,7 +189,7 @@ export const LogsFilter = ({
}}
/>
</div>
<div>
{/* <div>
<Button
isLoading={false}
colorSchema="primary"
@@ -198,15 +198,15 @@ export const LogsFilter = ({
leftIcon={<FontAwesomeIcon icon={faFilterCircleXmark} className="mr-2" />}
onClick={() => reset({
eventType: undefined,
actor: "",
userAgentType: "",
actor: undefined,
userAgentType: undefined,
startDate: undefined,
endDate: undefined
})}
>
Clear filters
</Button>
</div>
</div> */}
</div>
);
}
@@ -32,12 +32,14 @@ export const LogsSection = () => {
const perPage = watch("perPage") as number;
return (
<div className="p-4 bg-mineshaft-900 mb-6 rounded-lg border border-mineshaft-600">
<div className="flex items-center mb-8">
<div
// className="p-4 bg-mineshaft-900 mb-6 rounded-lg border border-mineshaft-600"
>
{/* <div className="flex items-center mb-8">
<h2 className="text-xl font-semibold flex-1 text-white">
Audit Logs
</h2>
</div>
</div> */}
<LogsFilter
control={control}
reset={reset}
@@ -100,6 +100,9 @@ export const LogsTableRow = ({
{event.metadata.app && (
<p>{`Target app: ${event.metadata.app}`}</p>
)}
{event.metadata.appId && (
<p>{`Target app: ${event.metadata.appId}`}</p>
)}
{event.metadata.targetEnvironment && (
<p>{`Target environment: ${event.metadata.targetEnvironment}`}</p>
)}
@@ -117,6 +120,9 @@ export const LogsTableRow = ({
{event.metadata.app && (
<p>{`Target App: ${event.metadata.app}`}</p>
)}
{event.metadata.appId && (
<p>{`Target app: ${event.metadata.appId}`}</p>
)}
{event.metadata.targetEnvironment && (
<p>{`Target environment: ${event.metadata.targetEnvironment}`}</p>
)}
@@ -219,7 +225,7 @@ export const LogsTableRow = ({
return (
<Td>
<p>{`Environment: ${event.metadata.environment}`}</p>
<p>{`Secret Path: ${event.metadata.secretPath}`}</p>
<p>{`Secret path: ${event.metadata.secretPath}`}</p>
<p>{`Webhook URL: ${event.metadata.webhookUrl}`}</p>
<p>{`Disabled: ${event.metadata.isDisabled}`}</p>
</Td>
@@ -228,7 +234,7 @@ export const LogsTableRow = ({
return (
<Td>
<p>{`Environment: ${event.metadata.environment}`}</p>
<p>{`Secret Path: ${event.metadata.secretPath}`}</p>
<p>{`Secret path: ${event.metadata.secretPath}`}</p>
<p>{`Webhook URL: ${event.metadata.webhookUrl}`}</p>
<p>{`Disabled: ${event.metadata.isDisabled}`}</p>
</Td>
@@ -237,14 +243,42 @@ export const LogsTableRow = ({
return (
<Td>
<p>{`Environment: ${event.metadata.environment}`}</p>
<p>{`Secret Path: ${event.metadata.secretPath}`}</p>
<p>{`Secret path: ${event.metadata.secretPath}`}</p>
<p>{`Webhook URL: ${event.metadata.webhookUrl}`}</p>
<p>{`Disabled: ${event.metadata.isDisabled}`}</p>
</Td>
);
case EventType.GET_SECRET_IMPORTS:
return (
<Td>
<p>{`Environment: ${event.metadata.environment}`}</p>
<p>{`# Imported paths: ${event.metadata.numberOfImports}`}</p>
</Td>
);
case EventType.CREATE_SECRET_IMPORT:
return (
<Td>
<p>{`Environment: ${event.metadata.environment}`}</p>
<p>{`Imported path: ${event.metadata.importSecretPath}`}</p>
</Td>
);
case EventType.UPDATE_SECRET_IMPORT:
return (
<Td>
<p>{`Environment: ${event.metadata.environment}`}</p>
<p>{`# Imported path: ${event.metadata.numberOfImports}`}</p>
</Td>
);
case EventType.DELETE_SECRET_IMPORT:
return (
<Td>
<p>{`Environment: ${event.metadata.environment}`}</p>
<p>{`Imported path: ${event.metadata.importSecretPath}`}</p>
</Td>
);
default:
return (
<Td>Test</Td>
<Td></Td>
);
}
}