Commit Graph

39 Commits

Author SHA1 Message Date
ryan 16bb9e5879 feat: add 24-hour traffic and capacity trend charts to dashboard and node detail pages
- Implemented TrendChart component for visualizing traffic and capacity trends.
- Enhanced DashboardOverview and NodeDetailPage components to display 24-hour request and capacity trends.
- Updated types to include traffic and capacity trend data structures.
- Created observability trends service to aggregate traffic and capacity data.
- Added tests for traffic report generation and trend data handling.
- Introduced new dependencies for charting (echarts and echarts-for-react).
2026-03-14 11:48:05 +08:00
ryan d9d02e749a feat: add phase-one node observability ingestion 2026-03-14 11:44:28 +08:00
ryan 4b4b6bf80e feat: 将日志级别从 Info 调整为 Debug,以减少生产环境中的日志噪声 2026-03-13 16:33:56 +08:00
ryan 8c3dd75802 feat: 添加支持文件路径处理函数,增强证书目录路径验证和日志记录功能 2026-03-13 16:01:52 +08:00
ryan 79a7e024d3 feat: 重构日志处理,使用自定义文本处理器增强日志格式和属性支持 2026-03-13 15:12:36 +08:00
ryan aeb7118b30 Refactor logging to use slog package across the application
- Replaced standard log package with log/slog in httpclient, nginx manager, sync service, updater, and other components for structured logging.
- Introduced environment variable `LOG_LEVEL` to control logging levels (debug, info, warn, error).
- Updated documentation to reflect changes in logging configuration and requirements.
- Added a new logging setup function in the ats_agent internal package to initialize the slog logger.
2026-03-13 14:53:51 +08:00
ryan 3fb4cec99c [优化] 接口优化, 心跳请求返回规则摘要 2026-03-13 11:22:37 +08:00
ryan be09f0a0ac [整理] 整理 2026-03-12 23:16:12 +08:00
ryan 4e19cd1565 feat: 添加 RuntimeRouteConfigPath 支持,优化 Nginx 配置管理 2026-03-12 23:09:15 +08:00
ryan a5da53a2fb feat: 更新 agent.json 配置,确保主配置路径为绝对路径,并添加 agent 状态文件 2026-03-12 23:00:18 +08:00
ryan eafcac87a4 feat: 增加 DockerExecutor 运行容器时挂载管理文件的测试用例 2026-03-12 22:52:48 +08:00
ryan 594057be06 feat: enhance apply logs and config versions features
- Add detailed diff reporting for OpenResty options in TestPreviewAndDiffConfigVersion.
- Update ApplyLogsPage to display additional log details including checksums and support file counts.
- Introduce ConfigVersionSnapshotModal for viewing configuration snapshots.
- Refactor config versions page to utilize new snapshot modal and improve option diff display.
- Extend ApplyLogItem type to include checksums and support file count.
- Enhance NodeDetailPage to show target version details and checksums.
2026-03-12 22:49:18 +08:00
ryan 4c0466a92b feat: enhance configuration management with main and route configs
- Added `main_config` and `route_config` fields to ActiveConfigResponse and AgentConfigResponse for better configuration handling.
- Updated NginxManager interface to accept separate main and route configurations.
- Modified sync service to apply main and route configurations correctly.
- Enhanced tests to validate new configuration fields and their application.
- Updated ConfigVersion model to include main configuration.
- Improved rendering logic for main and route configurations in the service layer.
- Added UI components to display main configuration changes and OpenResty parameter changes.
2026-03-12 22:26:06 +08:00
ryan ee539d9b67 [优化] ui优化 2026-03-12 15:43:32 +08:00
ryan 42ca18681c feat: openresty状态上报 2026-03-12 15:22:39 +08:00
ryan f50eb9adee feat: add support for release channels in version upgrade and node agent updates
- Introduced ReleaseChannel type to manage stable and preview releases.
- Updated DashboardTopbar to handle version upgrades based on selected release channel.
- Enhanced node detail page to allow manual checks for agent updates on stable and preview channels.
- Modified API endpoints to support fetching and upgrading based on release channels.
- Updated UI components to reflect changes in version checking and upgrade processes.
- Added tests for new functionality related to preview releases and agent updates.
2026-03-12 11:25:13 +08:00
ryan 29a0c64ba3 Refactor Nginx references to OpenResty throughout the codebase
- Updated all instances of "nginx" to "openresty" in log messages, error messages, and comments.
- Changed paths and Docker image names to reflect OpenResty usage.
- Modified test cases to align with OpenResty commands and configurations.
- Adjusted documentation to replace Nginx mentions with OpenResty, including setup instructions and configuration details.
- Ensured that version detection and runtime commands are consistent with OpenResty.
2026-03-12 09:48:38 +08:00
ryan f7d18f712e [升级] 0.4.x 2026-03-11 19:27:46 +08:00
ryan e895c91ab7 feat: 优化 Nginx 版本解析逻辑,添加正则表达式匹配,更新测试用例以验证新逻辑 2026-03-11 10:48:32 +08:00
ryan f3f4980b7d feat: 添加 InitialAuthToken 方法以优先使用 AgentToken,更新主函数以使用新方法 2026-03-10 23:34:04 +08:00
ryan e5c01f12be feat: 更新版本管理逻辑,支持通过标签版本注入,修改版本常量为可变变量 2026-03-10 23:06:36 +08:00
ryan 6fe9ad4af6 feat: 删除旧的发布工作流,添加新的发布工作流,重构更新逻辑以支持跨平台重启 2026-03-10 23:02:51 +08:00
ryan e72d658e2f feat: 添加节点自动更新功能,支持手动触发更新 2026-03-10 20:32:27 +08:00
ryan 83a11ead2b feat: add OperationSetting component and integrate into settings page
- Introduced OperationSetting component for managing agent configurations.
- Updated settings page to include a new tab for operation settings.
- Implemented functionality to fetch and update agent parameters such as heartbeat interval, sync interval, and auto-update settings.

docs: enhance deployment documentation for agent installation

- Added detailed instructions for agent installation using a script.
- Included examples for using discovery and agent tokens.
- Updated sections on global discovery tokens and agent auto-update features.

docs: revise design and development guidelines for V3

- Updated design document to reflect the current state and goals for V3.
- Clarified development guidelines to focus on operational experience improvements.

ci: add GitHub Actions workflow for agent releases

- Created a new workflow to automate the release of agent binaries on GitHub.
- Configured the workflow to build binaries for multiple platforms and publish them as releases.

feat: implement self-update mechanism for agent

- Added updater module to handle checking for and applying updates from GitHub releases.
- Implemented logic to restart the agent after a successful update.

chore: create install script for agent deployment

- Developed a bash script to facilitate the installation of the ATSFlare agent.
- The script supports automatic configuration and systemd service creation.
2026-03-10 20:22:42 +08:00
ryan c568b719b4 feat: VERSION 2026-03-10 20:00:04 +08:00
ryan 65a7331ea9 feat: 更新配置,优化时间字段为毫秒,添加 Nginx 版本检测功能 2026-03-10 19:58:43 +08:00
ryan 05e75549d2 feat: Implement node management features including creation, updating, and deletion
- Added CreateNode, UpdateNode, and DeleteNode functions in the controller for managing nodes.
- Introduced NodeInput struct for input validation during node creation and updates.
- Enhanced the Node model to include DiscoveryToken and Pending status.
- Updated the AgentRegister and AgentHeartbeat functions to utilize the new node management logic.
- Refactored the API router to include new routes for node management.
- Improved the frontend Node component to support node creation, editing, and deletion with appropriate UI feedback.
- Added tests to ensure the new functionality works as expected.
2026-03-10 15:33:06 +08:00
ryan e7dc18e6ca feat: enhance logging for agent registration, heartbeat, and configuration sync processes 2026-03-10 14:55:35 +08:00
ryan f396c8c74e feat: implement heartbeat and sync services with error handling in Runner 2026-03-10 14:44:05 +08:00
ryan 2185326f2f feat: enhance path management and improve backup logic for certificate directory 2026-03-10 11:30:26 +08:00
ryan 2cbaf95eae feat: add TLS certificate management functionality
- Implemented TLS certificate model and service for managing certificates.
- Added API endpoints for creating, importing, listing, and deleting TLS certificates.
- Enhanced proxy route configuration to support HTTPS with certificate selection.
- Updated frontend to include TLS certificate management UI with manual and file import options.
- Added validation for HTTPS routes to ensure certificates are selected.
- Implemented tests for TLS certificate creation and proxy route validation.
2026-03-10 10:44:29 +08:00
ryan 623ac6e32e 更新 DockerExecutor 的 Test 和 Reload 方法,优化容器启动逻辑,调整测试用例以反映新行为 2026-03-09 23:56:24 +08:00
ryan 29f19c5edd 重构 Nginx 管理器和同步服务,添加运行时确保功能,更新相关测试用例和文档 2026-03-09 23:50:55 +08:00
ryan 8da574f9e5 更新 .gitignore 文件以忽略数据目录,修改 DockerExecutor 的 RouteConfigDir 为绝对路径,并添加相应的单元测试 2026-03-09 23:44:56 +08:00
ryan d0b37e4326 添加 .gitignore 文件以忽略数据目录 2026-03-09 23:44:51 +08:00
ryan ff09c2bf6c 更新代理节点配置,支持 Docker 模式下的路径管理,添加相关测试用例 2026-03-09 23:43:33 +08:00
ryan c4f314f2c5 重构 Nginx 执行器,支持通过 Docker 启动独立 Nginx 容器,更新配置结构,完善相关文档和测试用例 2026-03-09 23:35:34 +08:00
ryan f1624c20a3 实现代理节点功能,包括主程序入口、配置加载、心跳检测和状态管理,添加相关服务和API响应结构 2026-03-09 23:13:27 +08:00
ryan 2ac083a225 添加代理节点功能,包括节点注册、心跳检测和配置获取,完善相关API路由和服务逻辑 2026-03-09 23:05:35 +08:00