FunctionsLogsColumnRender.tsx 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. import { Column } from 'react-data-grid'
  2. import { TimestampInfo } from 'ui-patterns/TimestampInfo'
  3. import type { LogData } from '../Logs.types'
  4. import { RowLayout, SeverityFormatter, TextFormatter } from '../LogsFormatters'
  5. import { defaultRenderCell } from './DefaultPreviewColumnRenderer'
  6. const columns: Column<LogData>[] = [
  7. {
  8. name: 'functions-logs-first-column',
  9. key: 'functions-logs-first-column',
  10. renderHeaderCell: () => null,
  11. renderCell: (props) => {
  12. if (!props.row.event_type && !props.row.level) {
  13. return defaultRenderCell(props)
  14. }
  15. return (
  16. <RowLayout>
  17. <TimestampInfo utcTimestamp={props.row.timestamp!} />
  18. {props.row.event_type === 'uncaughtException' ? (
  19. <SeverityFormatter value={props.row.event_type} uppercase={false} />
  20. ) : (
  21. <SeverityFormatter value={props.row.level as string} />
  22. )}
  23. <TextFormatter className="w-full" value={props.row.event_message} />
  24. </RowLayout>
  25. )
  26. },
  27. },
  28. ]
  29. export default columns