mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-10-13 04:51:28 +08:00

* feat: logs is updated * chore: width:100% is removed * chore: position of filter is updated * chore: min time and max time are now tracked from global state Co-authored-by: Pranay Prateek <pranay@signoz.io>
46 lines
1.1 KiB
TypeScript
46 lines
1.1 KiB
TypeScript
/* eslint-disable no-nested-ternary */
|
|
import { Typography } from 'antd';
|
|
import LogItem from 'components/Logs/LogItem';
|
|
import Spinner from 'components/Spinner';
|
|
import { map } from 'lodash-es';
|
|
import React, { memo } from 'react';
|
|
import { useSelector } from 'react-redux';
|
|
import { AppState } from 'store/reducers';
|
|
import { ILogsReducer } from 'types/reducer/logs';
|
|
|
|
import { Container, Heading } from './styles';
|
|
|
|
function LogsTable(): JSX.Element {
|
|
const { logs, isLoading, liveTail } = useSelector<AppState, ILogsReducer>(
|
|
(state) => state.logs,
|
|
);
|
|
|
|
if (isLoading) {
|
|
return <Spinner height={20} tip="Getting Logs" />;
|
|
}
|
|
|
|
return (
|
|
<Container flex="auto">
|
|
<Heading>
|
|
<Typography.Text
|
|
style={{
|
|
fontSize: '1rem',
|
|
fontWeight: 400,
|
|
}}
|
|
>
|
|
Event
|
|
</Typography.Text>
|
|
</Heading>
|
|
{Array.isArray(logs) && logs.length > 0 ? (
|
|
map(logs, (log) => <LogItem key={log.id} logData={log} />)
|
|
) : liveTail === 'PLAYING' ? (
|
|
<span>Getting live logs...</span>
|
|
) : (
|
|
<span>No log lines found</span>
|
|
)}
|
|
</Container>
|
|
);
|
|
}
|
|
|
|
export default memo(LogsTable);
|