diff --git a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DatabaseApiColumnRender.tsx b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DatabaseApiColumnRender.tsx index 179d182710d..fc5e883d2a0 100644 --- a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DatabaseApiColumnRender.tsx +++ b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DatabaseApiColumnRender.tsx @@ -1,16 +1,19 @@ -import { ResponseCodeFormatter, TimestampLocalFormatter } from '../LogsFormatters' +import { + ResponseCodeFormatter, + RowLayout, + TextFormatter, + TimestampLocalFormatter, +} from '../LogsFormatters' export default [ { formatter: (data: any) => ( -
+ -
- - {data.row.method} - {data.row.path} -
-
+ + + + ), }, ] diff --git a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DatabasePostgresColumnRender.tsx b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DatabasePostgresColumnRender.tsx index e0f5df77216..26dcc8d23a2 100644 --- a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DatabasePostgresColumnRender.tsx +++ b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DatabasePostgresColumnRender.tsx @@ -1,19 +1,18 @@ -import { SeverityFormatter, TimestampLocalFormatter } from '../LogsFormatters' +import { + RowLayout, + SeverityFormatter, + TextFormatter, + TimestampLocalFormatter, +} from '../LogsFormatters' export default [ { formatter: (data: any) => ( -
-
- -
- -
-
-
- {data.row.event_message} -
-
+ + + + + ), }, ] diff --git a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DefaultPreviewColumnRenderer.tsx b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DefaultPreviewColumnRenderer.tsx index adcf1c7ab1f..4f84b89bba9 100644 --- a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DefaultPreviewColumnRenderer.tsx +++ b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/DefaultPreviewColumnRenderer.tsx @@ -1,16 +1,13 @@ import { PreviewLogData } from '..' -import { TimestampLocalFormatter } from '../LogsFormatters' +import { RowLayout, TextFormatter, TimestampLocalFormatter } from '../LogsFormatters' -const DefaultPreviewColumnRenderer = [ +export default [ { - formatter: (data: { row: PreviewLogData }) => { - return ( -
- - {data.row.event_message} -
- ) - }, + formatter: (data: { row: PreviewLogData }) => ( + + + + + ), }, ] -export default DefaultPreviewColumnRenderer diff --git a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/FunctionsEdgeColumnRender.tsx b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/FunctionsEdgeColumnRender.tsx index bb495ab5deb..3b53839536d 100644 --- a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/FunctionsEdgeColumnRender.tsx +++ b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/FunctionsEdgeColumnRender.tsx @@ -1,36 +1,19 @@ -import { HeaderFormmater, ResponseCodeFormatter, TimestampLocalFormatter } from '../LogsFormatters' +import { + ResponseCodeFormatter, + RowLayout, + TextFormatter, + TimestampLocalFormatter, +} from '../LogsFormatters' export default [ { - key: 'timestamp', - headerRenderer: () => ( -
- -
+ formatter: (data: any) => ( + + + + + + ), - name: 'timestamp', - formatter: (data: any) => , - width: 128, - }, - { - key: 'status_code', - headerRenderer: () => , - name: 'status_code', - formatter: (data: any) => , - - width: 0, - resizable: true, - }, - { - key: 'method', - headerRenderer: () => , - width: 0, - resizable: true, - }, - { - key: 'id', - headerRenderer: () => , - name: 'id', - resizable: true, }, ] diff --git a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/FunctionsLogsColumnRender.tsx b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/FunctionsLogsColumnRender.tsx index 264067087d9..ec3b36648dd 100644 --- a/studio/components/interfaces/Settings/Logs/LogColumnRenderers/FunctionsLogsColumnRender.tsx +++ b/studio/components/interfaces/Settings/Logs/LogColumnRenderers/FunctionsLogsColumnRender.tsx @@ -1,36 +1,22 @@ -import { HeaderFormmater, SeverityFormatter, TimestampLocalFormatter } from '../LogsFormatters' +import { + RowLayout, + SeverityFormatter, + TextFormatter, + TimestampLocalFormatter, +} from '../LogsFormatters' export default [ { - key: 'timestamp', - headerRenderer: () => ( -
- -
- ), - name: 'timestamp', formatter: (data: any) => ( - + + + {data.row.event_type === 'uncaughtException' ? ( + + ) : ( + + )} + + ), - width: 128, - resizable: true, - }, - { - key: 'level', - headerRenderer: () => , - name: 'level', - formatter: (data: any) => { - if (data.row.event_type === 'uncaughtException') { - return - } - return - }, - width: 24, - resizable: true, - }, - { - key: 'event_message', - headerRenderer: () => , - resizable: true, }, ] diff --git a/studio/components/interfaces/Settings/Logs/LogsFormatters.tsx b/studio/components/interfaces/Settings/Logs/LogsFormatters.tsx index 1ac89c1f5ae..63930ef3f94 100644 --- a/studio/components/interfaces/Settings/Logs/LogsFormatters.tsx +++ b/studio/components/interfaces/Settings/Logs/LogsFormatters.tsx @@ -6,8 +6,18 @@ import { IconAlertCircle, IconInfo } from '@supabase/ui' import dayjs from 'dayjs' +import React from 'react' import { isUnixMicro, unixMicroToIsoTimestamp } from '.' +export const RowLayout: React.FC = ({ children }) => ( +
{children}
+) + +export const TextFormatter: React.FC<{ className?: string; value: string }> = ({ + value, + className, +}) => {value} + export const ResponseCodeFormatter = ({ value }: any) => { if (!value) { return ( @@ -109,6 +119,9 @@ export const SeverityFormatter = ({ const uppercasedValue = value.toUpperCase() const text = uppercase ? uppercasedValue : value + const Layout: React.FC<{ className?: string }> = ({ className, children }) => ( +
{children}
+ ) switch (uppercasedValue) { case 'UNCAUGHTEXCEPTION': @@ -116,12 +129,12 @@ export const SeverityFormatter = ({ case 'FATAL': case 'ERROR': return ( -
+
{text} -
+ ) break @@ -129,45 +142,45 @@ export const SeverityFormatter = ({ case 'DEBUG': return ( -
+
{text} -
+ ) break case 'LOG': return ( -
+
{text} -
+ ) break case 'WARNING': return ( -
+
{text} -
+ ) break // All other responses default: return ( -
+
-
+ ) break }