This is an automated email from the ASF dual-hosted git repository. zhaoqingran pushed a commit to branch web-ui in repository https://gitbox.apache.org/repos/asf/hertzbeat.git
commit e1712f02762f14a01cf95b664bedb832ffa94726 Merge: 341a67eac5 3a378f8710 Author: Logic <[email protected]> AuthorDate: Thu Nov 6 10:11:02 2025 +0800 Merge branch 'master' of github.com:apache/hertzbeat .all-contributorsrc | 84 +- .asf.yaml | 12 +- .devcontainer/devcontainer.json | 1 - .github/workflows/doc-build-test.yml | 2 +- CONTRIBUTING.md | 24 +- README.md | 46 +- README_CN.md | 43 +- README_JP.md | 42 +- .../agent/adapters/AlertDefineServiceAdapter.java | 81 - .../ai/agent/adapters/AlertServiceAdapter.java | 60 - .../ai/agent/adapters/MetricsServiceAdapter.java | 55 - .../ai/agent/adapters/MonitorServiceAdapter.java | 71 - .../impl/AlertDefineServiceAdapterImpl.java | 257 - .../adapters/impl/AlertServiceAdapterImpl.java | 141 - .../adapters/impl/MetricsServiceAdapterImpl.java | 136 - .../adapters/impl/MonitorServiceAdapterImpl.java | 214 - .../ai/agent/config/DynamicOpenAiApiKey.java | 57 - .../hertzbeat/ai/agent/config/LlmConfig.java | 76 - .../ai/agent/config/OpenAiYamlConfig.java | 43 - .../agent/controller/OpenAiConfigController.java | 160 - .../hertzbeat/ai/agent/dao/OpenAiConfigDao.java | 37 - .../ai/agent/pojo/dto/ConversationDto.java | 53 - .../hertzbeat/ai/agent/pojo/dto/Hierarchy.java | 87 - .../hertzbeat/ai/agent/pojo/dto/MessageDto.java | 52 - .../ai/agent/service/OpenAiConfigService.java | 100 - .../service/impl/ConversationServiceImpl.java | 276 - .../service/impl/OpenAiConfigServiceImpl.java | 200 - {hertzbeat-ai-agent => hertzbeat-ai}/pom.xml | 21 +- .../ai}/config/CustomSseServerTransport.java | 2 +- .../org/apache/hertzbeat/ai/config/LlmConfig.java | 156 + .../hertzbeat/ai}/config/McpContextHolder.java | 2 +- .../hertzbeat/ai}/config/PromptProvider.java | 4 +- .../hertzbeat/ai}/controller/ChatController.java | 106 +- .../hertzbeat/ai/dao/ChatConversationDao.java | 12 +- .../apache/hertzbeat/ai/dao/ChatMessageDao.java | 14 +- .../hertzbeat/ai}/pojo/dto/ChatRequestContext.java | 9 +- .../hertzbeat/ai/pojo/dto/ChatResponseChunk.java | 19 +- .../ai}/service/ChatClientProviderService.java | 12 +- .../hertzbeat/ai}/service/ConversationService.java | 38 +- .../hertzbeat/ai}/service/McpServerService.java | 4 +- .../impl/ChatClientProviderServiceImpl.java | 52 +- .../ai/service/impl/ConversationServiceImpl.java | 160 + .../ai}/service/impl/McpServerServiceImpl.java | 14 +- .../hertzbeat/ai}/tools/AlertDefineTools.java | 4 +- .../org/apache/hertzbeat/ai}/tools/AlertTools.java | 2 +- .../apache/hertzbeat/ai}/tools/MetricsTools.java | 2 +- .../apache/hertzbeat/ai}/tools/MonitorTools.java | 4 +- .../ai}/tools/impl/AlertDefineToolsImpl.java | 78 +- .../hertzbeat/ai}/tools/impl/AlertToolsImpl.java | 18 +- .../hertzbeat/ai}/tools/impl/MetricsToolsImpl.java | 23 +- .../hertzbeat/ai}/tools/impl/MonitorToolsImpl.java | 60 +- .../apache/hertzbeat/ai}/utils/UtilityClass.java | 200 +- .../impl/DingTalkRobotAlertNotifyHandlerImpl.java | 22 +- .../notice/impl/EmailAlertNotifyHandlerImpl.java | 2 +- .../hertzbeat/alert/service/SmsClientFactory.java | 4 +- .../impl/AlibabaCloudSlsExternAlertService.java | 25 +- .../alert/service/impl/AlibabaSmsClientImpl.java | 4 +- .../alert/service/impl/AwsSmsClientImpl.java | 2 +- .../alert/service/impl/SmsLocalSmsClientImpl.java | 2 +- .../alert/service/impl/TencentSmsClientImpl.java | 2 +- .../alert/service/impl/TwilioSmsClientImpl.java | 4 +- .../alert/service/impl/UniSmsClientImpl.java | 4 +- .../impl/EmailAlertNotifyHandlerImplTest.java | 2 +- .../alert/service/AlertDefineServiceTest.java | 8 +- .../AlibabaCloudSlsExternAlertServiceTest.java | 35 + .../alert/service/AwsSmsClientImplTest.java | 2 +- .../alert/service/SmsClientFactoryTest.java | 6 +- .../alert/service/TwilioSmsClientImplTest.java | 4 +- .../service/impl/SmsLocalSmsClientImplTest.java | 4 +- .../alert/service/impl/UniSmsClientImplTest.java | 4 +- .../prometheus/PrometheusAutoCollectImpl.java | 3 +- .../collect/prometheus/parser/OnlineParser.java | 163 +- .../prometheus/parser/OnlineParserSingleTest.java | 130 + .../collector/dispatch/CommonDispatcher.java | 10 +- .../src/main/resources/application.yml | 2 +- .../collector/constants/ScheduleTypeEnum.java | 20 +- .../hertzbeat/collector/timer/TimerDispatch.java | 6 + .../hertzbeat/collector/timer/TimerDispatcher.java | 55 +- .../collector/timer/TimerDispatcherTest.java | 182 + .../common/constants/ConfigConstants.java | 2 + .../common/constants/GeneralConfigTypeEnum.java | 7 +- .../common/constants/JexlKeywordsEnum.java | 45 +- .../common/entity/ai/ChatConversation.java | 58 +- .../hertzbeat/common/entity/ai/ChatMessage.java | 60 +- .../common/entity}/dto/MailServerConfig.java | 2 +- .../common/entity/dto/ModelProviderConfig.java | 35 +- .../entity/dto/sms}/AlibabaSmsProperties.java | 2 +- .../common/entity/dto/sms}/AwsSmsProperties.java | 2 +- .../common/entity/dto/sms}/SmsConfig.java | 4 +- .../entity/dto/sms}/SmslocalSmsProperties.java | 2 +- .../entity/dto/sms}/TencentSmsProperties.java | 4 +- .../entity/dto/sms}/TwilioSmsProperties.java | 4 +- .../common/entity/dto/sms}/UniSmsProperties.java | 4 +- .../apache/hertzbeat/common/entity/job/Job.java | 10 + .../hertzbeat/common/entity/manager/Monitor.java | 9 + .../support/event/AiProviderConfigChangeEvent.java | 10 +- .../JexlCheckerUtil.java} | 49 +- .../org/apache/hertzbeat/common/util/JsonUtil.java | 22 + .../apache/hertzbeat/common/util/JsonUtilTest.java | 15 + hertzbeat-e2e/hertzbeat-log-e2e/pom.xml | 63 +- .../log/alert/LogPeriodicAlertE2eTest.java | 2 +- .../log/alert/LogRealTimeAlertE2eTest.java | 2 +- .../log/ingestion/LogIngestionE2eTest.java | 2 +- .../log/storage/GreptimeLogStorageE2eTest.java | 2 +- .../src/test}/resources/sureness.yml | 0 hertzbeat-e2e/pom.xml | 2 +- hertzbeat-manager/pom.xml | 223 +- .../hertzbeat/manager/config/AiProperties.java | 60 - .../ManagerAutoConfiguration.java} | 32 +- .../hertzbeat/manager/controller/AiController.java | 68 - .../controller/GeneralConfigController.java | 4 +- .../manager/pojo/dto/OpenAiRequestParamDTO.java | 70 - .../hertzbeat/manager/pojo/dto/OpenAiResponse.java | 115 - .../hertzbeat/manager/pojo/dto/TemplateConfig.java | 1 + .../manager/service/ai/AlibabaAiServiceImpl.java | 118 - .../manager/service/ai/KimiAiServiceImpl.java | 96 - .../manager/service/ai/OllamaAiService.java | 95 - .../manager/service/ai/OpenRouterServiceImpl.java | 97 - .../manager/service/ai/SparkDeskAiServiceImpl.java | 104 - .../manager/service/ai/ZhiPuServiceImpl.java | 100 - .../service/ai/factory/AiServiceFactoryImpl.java | 64 - .../manager/service/impl/AppServiceImpl.java | 50 +- .../service/impl/MailGeneralConfigServiceImpl.java | 2 +- ...pl.java => ModelProviderConfigServiceImpl.java} | 45 +- .../manager/service/impl/MonitorServiceImpl.java | 16 +- .../service/impl/SmsGeneralConfigServiceImpl.java | 3 +- ...rk.boot.autoconfigure.AutoConfiguration.imports | 14 +- .../src/main/resources/define/app-kafka_client.yml | 4 +- .../src/main/resources/define/app-kubernetes.yml | 36 + .../src/main/resources/define/app-pulsar.yml | 42 +- .../manager/controller/AiControllerTest.java | 88 - .../controller/MetricsFavoriteControllerTest.java | 2 +- .../hertzbeat/manager/script/YamlCheckScript.java | 15 +- .../manager/service/AiServiceFactoryTest.java | 125 - .../service/AlertDefineServiceIntegrationTest.java | 123 - .../manager/service/AlibabaAiServiceTest.java | 27 - .../manager/service/ConfigServiceTest.java | 2 +- .../service/MailGeneralConfigServiceTest.java | 2 +- .../service/SmsGeneralConfigServiceTest.java | 2 +- .../src/{main => test}/resources/sureness.yml | 0 hertzbeat-startup/README.md | 135 + {hertzbeat-manager => hertzbeat-startup}/pom.xml | 212 +- .../hertzbeat/startup/HertzBeatApplication.java | 14 +- .../src/main/resources/application-test.yml | 13 - .../src/main/resources/application.yml | 21 - .../src/main/resources/banner.txt | 0 .../db/migration/h2/V160__update_column.sql | 0 .../db/migration/h2/V170__update_column.sql | 0 .../db/migration/h2/V172__update_column.sql | 0 .../db/migration/h2/V173__update_column.sql | 0 .../db/migration/h2/V180__update_column.sql | 0 .../db/migration/mysql/V160__update_column.sql | 0 .../db/migration/mysql/V170__update_column.sql | 0 .../db/migration/mysql/V172__update_column.sql | 0 .../db/migration/mysql/V173__update_column.sql | 0 .../db/migration/mysql/V180__update_column.sql | 0 .../migration/postgresql/V160__update_column.sql | 0 .../migration/postgresql/V170__update_column.sql | 0 .../migration/postgresql/V172__update_column.sql | 0 .../migration/postgresql/V173__update_column.sql | 0 .../migration/postgresql/V180__update_column.sql | 0 .../src/main/resources/logback-spring.xml | 0 .../src/main/resources/sureness.yml | 0 .../startup}/AbstractSpringIntegrationTest.java | 4 +- .../org/apache/hertzbeat/startup/ContextTest.java | 15 +- .../hertzbeat/startup}/dao/CollectorDaoTest.java | 5 +- .../hertzbeat/startup}/dao/LabelDaoTest.java | 5 +- .../startup}/dao/MetricsFavoriteDaoTest.java | 7 +- .../hertzbeat/startup}/dao/MonitorDaoTest.java | 5 +- .../hertzbeat/startup}/dao/NoticeRuleDaoTest.java | 4 +- .../hertzbeat/startup}/dao/ParamDaoTest.java | 5 +- .../hertzbeat/startup}/dao/ParamDefineDaoTest.java | 5 +- home/README.md | 44 +- home/blog/2024-06-11-hertzbeat-v1.6.0-update.md | 4 +- ...25-04-23-hertzbeat-upgrade-guide-docker-mode.md | 2 +- home/blog/2025-10-04-new-pmc.md | 30 + home/docs/community/contribution.md | 8 +- home/docs/community/development.md | 18 +- home/docs/community/document.md | 8 +- home/docs/community/how-to-release.md | 6 +- home/docs/community/how-to-verify.md | 2 +- home/docs/community/maturity.md | 40 +- home/docs/download.md | 2 +- home/docs/help/{ai_agent_chat.md => ai_agent.md} | 35 +- home/docs/help/ai_config.md | 81 - home/docs/help/kafka_client.md | 4 +- home/docs/help/kubernetes.md | 4 + home/docs/help/mcp_sse_server.md | 6 +- home/docs/help/pulsar.md | 4 +- home/docs/introduce.md | 155 +- home/docs/start/update-1.6.0.md | 4 +- home/github-avatar.js | 180 + home/i18n/en/code.json | 2 +- home/i18n/zh-cn/code.json | 2 +- .../2024-06-11-hertzbeat-v1.6.0-update.md | 6 +- ...25-04-23-hertzbeat-upgrade-guide-docker-mode.md | 2 +- ...rtzbeat-v1.7.0-docker-and-helm-upgrade-guide.md | 2 +- .../2025-10-04-new-pmc.md | 26 + .../current/community/contribution.md | 8 +- .../current/community/development.md | 18 +- .../current/community/document.md | 8 +- .../current/community/how-to-release.md | 6 +- .../current/community/how-to-verify.md | 2 +- .../current/community/maturity.md | 2 +- .../current/download.md | 2 +- .../current/help/ai_agent.md | 357 + .../current/help/ai_config.md | 81 - .../current/help/kafka_client.md | 4 +- .../current/help/kubernetes.md | 4 + .../current/help/mcp_sse_server.md | 97 + .../current/help/pulsar.md | 4 +- .../current/introduce.md | 17 +- .../current/start/update-1.6.0.md | 6 +- .../version-v1.6.x/community/how-to-release.md | 4 +- .../version-v1.6.x/community/how-to-verify.md | 2 +- .../version-v1.6.x/help/kafka_client.md | 4 +- .../version-v1.6.x/help/pulsar.md | 4 +- .../version-v1.6.x/start/update-1.6.0.md | 6 +- home/package.json | 8 +- home/pnpm-lock.yaml | 12770 +++++++++++++++++++ home/sidebars.json | 5 +- home/src/pages/team/data/all-contributor.json | 2936 +++++ home/src/pages/team/data/github-avatar.json | 1118 ++ home/src/pages/team/{ => data}/member.json | 15 +- home/src/pages/team/index.css | 83 +- home/src/pages/team/index.jsx | 562 +- .../version-v1.6.x/community/how-to-release.md | 4 +- .../version-v1.6.x/community/how-to-verify.md | 2 +- .../version-v1.6.x/help/kafka_client.md | 4 +- home/versioned_docs/version-v1.6.x/help/pulsar.md | 4 +- .../version-v1.6.x/start/update-1.6.0.md | 4 +- home/yarn.lock | 9637 -------------- mcp-servers/README.md | 2 + .../mcp-log-server}/README.md | 0 .../mcp-log-server}/pom.xml | 0 .../mcp/log}/server/McpServerApplication.java | 0 .../mcp/log}/server/service/LogService.java | 0 .../src/main/resources/application.yml | 0 pom.xml | 18 +- script/application.yml | 68 +- script/assembly/server/assembly-docker.xml | 2 +- script/assembly/server/assembly-linux-amd64.xml | 2 +- script/assembly/server/assembly-linux-arm64.xml | 2 +- script/assembly/server/assembly-macos-amd64.xml | 2 +- script/assembly/server/assembly-macos-arm64.xml | 2 +- script/assembly/server/assembly-windows-64.xml | 2 +- script/assembly/server/assembly.xml | 2 +- script/assembly/server/bin/entrypoint.sh | 2 +- script/assembly/server/bin/startup.bat | 2 +- script/assembly/server/bin/startup.sh | 2 +- script/ci/exclude_files.txt | 4 +- .../hertzbeat-mysql-iotdb/conf/application.yml | 15 - .../hertzbeat-mysql-tdengine/conf/application.yml | 15 - .../conf/application.yml | 15 - .../conf/application.yml | 15 - script/docker/collector/Dockerfile | 3 +- script/docker/server/Dockerfile | 3 +- web-app/src/app/layout/basic/basic.component.html | 30 - web-app/src/app/layout/basic/basic.component.less | 40 +- web-app/src/app/layout/basic/basic.component.ts | 10 +- .../layout/basic/widgets/chat-input.component.ts | 89 + .../app/layout/basic/widgets/search.component.less | 74 - .../app/layout/basic/widgets/search.component.ts | 181 - web-app/src/app/layout/layout.module.ts | 4 +- .../pojo/{Monitor.ts => ModelProviderConfig.ts} | 53 +- web-app/src/app/pojo/Monitor.ts | 8 + .../alert-notice-receiver.component.html | 8 + .../app/routes/dashboard/dashboard.component.html | 2 +- .../app/routes/dashboard/dashboard.component.less | 2 +- .../app/routes/dashboard/dashboard.component.ts | 4 +- .../monitor-data-table.component.html | 7 +- .../monitor-detail/monitor-detail.component.ts | 25 +- .../monitor/monitor-edit/monitor-edit.component.ts | 10 +- .../monitor-form/monitor-form.component.html | 28 + .../monitor/monitor-form/monitor-form.component.ts | 38 +- .../monitor-list/monitor-list.component.html | 35 +- .../monitor-list/monitor-list.component.less | 33 + .../monitor/monitor-list/monitor-list.component.ts | 124 +- web-app/src/app/service/ai-chat.service.ts | 33 +- web-app/src/app/service/general-config.service.ts | 9 + web-app/src/app/service/openai-config.service.ts | 58 - .../shared/components/ai-bot/ai-bot.component.html | 67 - .../shared/components/ai-bot/ai-bot.component.less | 147 - .../shared/components/ai-bot/ai-bot.component.scss | 158 - .../shared/components/ai-bot/ai-bot.component.ts | 72 - .../shared/components/ai-chat/ai-chat.module.ts | 8 +- .../shared/components/ai-chat/chat.component.html | 147 +- .../shared/components/ai-chat/chat.component.less | 227 +- .../shared/components/ai-chat/chat.component.ts | 331 +- web-app/src/app/shared/constants.ts | 2 +- .../app/shared/services/ai-chat-modal.service.ts | 6 +- web-app/src/app/shared/shared.module.ts | 2 - web-app/src/assets/app-data.json | 7 + web-app/src/assets/i18n/en-US.json | 94 +- web-app/src/assets/i18n/ja-JP.json | 91 +- web-app/src/assets/i18n/pt-BR.json | 509 +- web-app/src/assets/i18n/zh-CN.json | 94 +- web-app/src/assets/i18n/zh-TW.json | 93 +- web-app/src/styles/index.less | 6 +- web-app/src/styles/theme.less | 4 +- 300 files changed, 21558 insertions(+), 16902 deletions(-) --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
