Commit e4bf4808 authored by 陈前坚's avatar 陈前坚

perf: log

parent b768069c
...@@ -5,27 +5,20 @@ import { ...@@ -5,27 +5,20 @@ import {
Row, Row,
Col, Col,
Button, Button,
Select,
Menu,
notification, notification,
message, message,
Spin, Spin,
} from 'antd'; } from 'antd';
import { SwapRightOutlined } from '@ant-design/icons'; import { SwapRightOutlined, DownOutlined } from '@ant-design/icons';
import { Chart, Interval, Tooltip, Axis } from 'bizcharts'; import { Chart, Interval, Tooltip, Axis } from 'bizcharts';
import { DataSet } from '@antv/data-set'; import { DataSet } from '@antv/data-set';
import moment from 'moment'; import moment from 'moment';
import { post, PUBLISH_SERVICE } from '@/services/index'; import { post, PUBLISH_SERVICE } from '@/services/index';
const { Option } = Select;
// const data = [ const ServiceLog = () => {
// { value: 251, name: '接口名称一', subName: '子事例一' },
// { value: 1041, name: '接口名称三', subName: '子事例二' },
// { value: 610, name: '接口名称二', subName: '子事例二' },
// { value: 434, name: '接口名称二', subName: '子事例四' },
// { value: 335, name: '接口名称二', subName: '子事例五' },
// { value: 250, name: '接口名称三', subName: '子事例二' },
// ];
// const data = [];
const Demo = () => {
const [loading, setLoading] = useState(false); // 源数据 const [loading, setLoading] = useState(false); // 源数据
const [data0, setData0] = useState([]); // 源数据 const [data0, setData0] = useState([]); // 源数据
const [pathCount, setPathCount] = useState([]); // 接口调用次数,统计数据 const [pathCount, setPathCount] = useState([]); // 接口调用次数,统计数据
...@@ -35,6 +28,7 @@ const Demo = () => { ...@@ -35,6 +28,7 @@ const Demo = () => {
const [endTime, setEndTime] = useState( const [endTime, setEndTime] = useState(
moment(new Date(), 'YYYY-MM-DD HH:mm:ss'), // 默认值当前时间 moment(new Date(), 'YYYY-MM-DD HH:mm:ss'), // 默认值当前时间
); );
const [logType, setLogType] = useState(0); // 请求参数,日志类型,默认是正常,0:成功 -1:错误 9999:全部
const [tableColumns, setTableColumns] = useState([]); // 源数据 const [tableColumns, setTableColumns] = useState([]); // 源数据
console.log(startTime.format('HH:mm:ss')); console.log(startTime.format('HH:mm:ss'));
...@@ -46,7 +40,7 @@ const Demo = () => { ...@@ -46,7 +40,7 @@ const Demo = () => {
setLoading(true); setLoading(true);
getData(); getData();
} }
}, [startTime, endTime]); }, [startTime, endTime, logType]);
const getData = () => { const getData = () => {
post(`${PUBLISH_SERVICE}/LogCenter/GetOMSLog`, { post(`${PUBLISH_SERVICE}/LogCenter/GetOMSLog`, {
PageIndex: 0, PageIndex: 0,
...@@ -57,7 +51,7 @@ const Demo = () => { ...@@ -57,7 +51,7 @@ const Demo = () => {
HourTo: endTime.format('HH:mm:ss'), HourTo: endTime.format('HH:mm:ss'),
IP: '', IP: '',
Module: '', Module: '',
LogType: 0, LogType: +logType,
Description: '', Description: '',
LoginName: '', LoginName: '',
UserName: '', UserName: '',
...@@ -154,11 +148,15 @@ const Demo = () => { ...@@ -154,11 +148,15 @@ const Demo = () => {
), ),
); );
}; };
const selectChange = value => {
setLogType(value);
};
return ( return (
<> <>
<Row> <Row style={{ padding: '10px', background: 'white' }}>
<div style={{ lineHeight: 2 }}>时间:</div> <Col span={24}>
<span style={{ lineHeight: 2 }}>时间:</span>
<DatePicker <DatePicker
showTime showTime
format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss"
...@@ -177,20 +175,24 @@ const Demo = () => { ...@@ -177,20 +175,24 @@ const Demo = () => {
style={{ marginRight: '10px' }} style={{ marginRight: '10px' }}
allowClear={false} allowClear={false}
/> />
<Col span={12}>
<Button onClick={() => setTime(1)}>1小时</Button> <Button onClick={() => setTime(1)}>1小时</Button>
<Button onClick={() => setTime(6)}>6小时</Button> <Button onClick={() => setTime(6)}>6小时</Button>
<Button onClick={() => setTime(12)}>12小时</Button> <Button onClick={() => setTime(12)}>12小时</Button>
<Button onClick={() => setTime(24)}>1</Button> <Button onClick={() => setTime(24)}>1</Button>
<Button onClick={() => setTime(24 * 7)}>1</Button> <Button onClick={() => setTime(24 * 7)}>1</Button>
<span style={{ lineHeight: 2, marginLeft: '20px' }}>日志类型:</span>
<Select defaultValue="正常" onChange={selectChange}>
<Option value="9999">全部</Option>
<Option value="0">正常</Option>
<Option value="-1">错误</Option>
</Select>
</Col> </Col>
{/* <div style={{ lineHeight: 2 }}>类型:</div> */}
</Row> </Row>
<Spin spinning={loading} tip="loading"> <Spin spinning={loading} tip="loading">
<Row style={{ padding: '10px' }}> <Row style={{ padding: '10px', background: 'white' }}>
<Col span={12}> <Col span={12}>
<Chart <Chart
height={340} height={316}
width={400} width={400}
autoFit autoFit
data={pathCount} data={pathCount}
...@@ -200,6 +202,7 @@ const Demo = () => { ...@@ -200,6 +202,7 @@ const Demo = () => {
> >
<Axis <Axis
name="Path" name="Path"
// label={{ autoEllipsis: 'true', autoHide: 'true' }}
label="null" label="null"
title={{ offset: 20, position: 'end' }} title={{ offset: 20, position: 'end' }}
/> />
...@@ -210,7 +213,7 @@ const Demo = () => { ...@@ -210,7 +213,7 @@ const Demo = () => {
</Col> </Col>
<Col span={12}> <Col span={12}>
<Chart <Chart
height={340} height={316}
width={400} width={400}
autoFit autoFit
data={reponseTime} data={reponseTime}
...@@ -234,7 +237,6 @@ const Demo = () => { ...@@ -234,7 +237,6 @@ const Demo = () => {
bordered bordered
columns={tableColumns || []} columns={tableColumns || []}
dataSource={data0} dataSource={data0}
// loading={tableLoading}
scroll={{ x: 'max-content' }} scroll={{ x: 'max-content' }}
pagination={{ pagination={{
showTotal: (total, range) => showTotal: (total, range) =>
...@@ -249,98 +251,4 @@ const Demo = () => { ...@@ -249,98 +251,4 @@ const Demo = () => {
</> </>
); );
}; };
export default Demo; export default ServiceLog;
// dv.transform({
// type: 'aggregate', // 别名summary
// fields: ['name', 'value'], // 统计字段集
// operations: ['count', 'mean'], // 统计操作集
// as: ['计数', '平均值'], // 存储字段集
// groupBy: ['name'], // 分组字段集
// }).transform({
// type: 'sort-by',
// fields: ['计数'], // 根据指定的字段集进行排序,与lodash的sortBy行为一致
// order: 'DESC', // 默认为 ASC,DESC 则为逆序
// });
// const data = [
// {
// ID: '215341',
// loginName: 'gcwqgps',
// userName: 'gcwqgps',
// systemType: 'solution',
// terminal: 'Browser',
// IP: '192.168.10.150',
// logTime: '2020/11/23 18:56:27',
// },
// {
// ID: '215342',
// loginName: 'luojian',
// userName: 'gwcj',
// systemType: 'city',
// terminal: 'Browser',
// IP: '127.0.0.1',
// logTime: '2020/11/23 19:17:51',
// },
// {
// ID: '215343',
// loginName: 'luojian',
// userName: 'gwcj',
// systemType: 'city',
// terminal: 'Browser',
// IP: '127.0.0.1',
// logTime: '2020/11/23 19:41:12',
// },
// {
// ID: '215344',
// loginName: 'luojian',
// userName: 'gwcj',
// systemType: 'city',
// terminal: 'Browser',
// IP: '127.0.0.1',
// logTime: '2020/11/23 19:42:04',
// },
// {
// ID: '215345',
// loginName: 'luojian',
// userName: 'gwcj',
// systemType: 'city',
// terminal: 'Browser',
// IP: '127.0.0.1',
// logTime: '2020/11/23 19:45:56',
// },
// {
// ID: '215346',
// loginName: 'panda',
// userName: '熊猫智慧水务',
// systemType: 'city',
// terminal: 'Browser',
// IP: '192.168.10.150',
// logTime: '2020/11/23 19:55:20',
// },
// {
// ID: '215347',
// loginName: 'luojian',
// userName: 'gwcj',
// systemType: 'city',
// terminal: 'Browser',
// IP: '127.0.0.1',
// logTime: '2020/11/23 19:55:39',
// },
// {
// ID: '215348',
// loginName: '17671748304',
// userName: '邹小仙',
// systemType: 'city',
// terminal: 'Browser',
// IP: '192.168.10.150',
// logTime: '2020/11/23 20:01:34',
// },
// {
// ID: '215349',
// loginName: 'luojian',
// userName: 'gwcj',
// systemType: 'city',
// terminal: 'Browser',
// IP: '127.0.0.1',
// logTime: '2020/11/23 20:16:51',
// },
// ];
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment