#feature: add AI log analysis & some bugfix

This commit is contained in:
2026-01-14 13:58:50 +08:00
parent e479ed02ea
commit ae6c169f5f
33 changed files with 3898 additions and 164 deletions

View File

@@ -46,6 +46,12 @@
ref="messageDispatch"
/>
<!-- SLS 日志分析页面 -->
<log-analysis
v-else-if="currentPage === 'log-analysis'"
:is-admin="isAdmin"
/>
<!-- 系统设置页面 -->
<system-settings v-else-if="currentPage === 'settings'" :is-admin="isAdmin" />
@@ -66,6 +72,7 @@ import JiraWorklog from '../jira/JiraWorklog.vue';
import MessageSync from '../message-sync/MessageSync.vue';
import EventConsumerSync from '../message-sync/EventConsumerSync.vue';
import MessageDispatch from '../message-sync/MessageDispatch.vue';
import LogAnalysis from '../log-analysis/LogAnalysis.vue';
import SystemSettings from './SystemSettings.vue';
import OperationLogs from './OperationLogs.vue';
import IpUserMappings from './IpUserMappings.vue';
@@ -81,6 +88,7 @@ export default {
MessageSync,
EventConsumerSync,
MessageDispatch,
LogAnalysis,
SystemSettings,
OperationLogs,
IpUserMappings
@@ -129,6 +137,7 @@ export default {
'message-sync': '消息同步',
'event-consumer-sync': '事件消费者同步对比',
'message-dispatch': '消息分发异常查询',
'log-analysis': 'SLS 日志分析',
'settings': '系统设置',
'logs': '操作日志',
'ip-mappings': 'IP 用户映射'
@@ -155,6 +164,8 @@ export default {
page = 'event-consumer-sync';
} else if (path === '/message-dispatch') {
page = 'message-dispatch';
} else if (path === '/log-analysis') {
page = 'log-analysis';
} else if (path === '/settings') {
page = 'settings';
} else if (path === '/logs') {

View File

@@ -190,6 +190,30 @@
消息分发异常
</a>
<a
href="#"
@click.prevent="setActiveMenu('log-analysis')"
:class="[
'group flex items-center px-3 py-2 text-sm font-medium rounded-lg transition-colors duration-200',
activeMenu === 'log-analysis'
? 'bg-blue-50 text-blue-700 border-r-2 border-blue-700'
: 'text-gray-700 hover:bg-gray-50 hover:text-gray-900'
]"
>
<svg
:class="[
'mr-3 h-5 w-5 transition-colors duration-200',
activeMenu === 'log-analysis' ? 'text-blue-500' : 'text-gray-400 group-hover:text-gray-500'
]"
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
>
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"/>
</svg>
SLS 日志分析
</a>
<a
href="#"
@click.prevent="setActiveMenu('settings')"
@@ -350,6 +374,8 @@ export default {
menu = 'event-consumer-sync';
} else if (path === '/message-dispatch') {
menu = 'message-dispatch';
} else if (path === '/log-analysis') {
menu = 'log-analysis';
} else if (path === '/settings') {
menu = 'settings';
} else if (path === '/logs') {