#feature: some update
This commit is contained in:
+6
-1
@@ -2,6 +2,7 @@
|
||||
|
||||
use App\Http\Controllers\Admin\AdminMetaController;
|
||||
use App\Http\Controllers\Admin\ConfigController;
|
||||
use App\Http\Controllers\Admin\ErpRequestReportConfigController;
|
||||
use App\Http\Controllers\Admin\IpUserMappingController;
|
||||
use App\Http\Controllers\Admin\JenkinsBuildController;
|
||||
use App\Http\Controllers\Admin\JenkinsDeploymentController;
|
||||
@@ -40,7 +41,7 @@ Route::prefix('sql-generator')->group(function () {
|
||||
});
|
||||
|
||||
// 进产诊断 API 路由
|
||||
Route::prefix('production-diagnosis')->group(function () {
|
||||
Route::prefix('production-diagnosis')->middleware('throttle:30,1')->group(function () {
|
||||
Route::post('/diagnose', [ProductionDiagnosisController::class, 'diagnose']);
|
||||
});
|
||||
|
||||
@@ -90,6 +91,8 @@ Route::get('/admin/meta', [AdminMetaController::class, 'show']);
|
||||
|
||||
// 管理员IP白名单限定的后台接口
|
||||
Route::prefix('admin')->middleware('admin.ip')->group(function () {
|
||||
Route::get('/erp-request-report/config', [ErpRequestReportConfigController::class, 'show']);
|
||||
Route::put('/erp-request-report/config', [ErpRequestReportConfigController::class, 'update']);
|
||||
Route::get('/configs', [ConfigController::class, 'index']);
|
||||
Route::post('/configs', [ConfigController::class, 'store']);
|
||||
Route::put('/configs/{config}', [ConfigController::class, 'update']);
|
||||
@@ -118,6 +121,8 @@ Route::prefix('admin')->middleware('admin.ip')->group(function () {
|
||||
// Jenkins 发布历史
|
||||
Route::get('/jenkins/build-projects', [JenkinsBuildController::class, 'projects']);
|
||||
Route::post('/jenkins/trigger-builds', [JenkinsBuildController::class, 'trigger']);
|
||||
Route::post('/jenkins/build-statuses', [JenkinsBuildController::class, 'statuses']);
|
||||
Route::post('/jenkins/cancel-build', [JenkinsBuildController::class, 'cancel']);
|
||||
Route::get('/jenkins/deployments', [JenkinsDeploymentController::class, 'index']);
|
||||
Route::get('/jenkins/deployments/{id}', [JenkinsDeploymentController::class, 'show']);
|
||||
});
|
||||
|
||||
+17
-8
@@ -26,14 +26,14 @@ Schedule::command('git-monitor:check')
|
||||
->withoutOverlapping(10)
|
||||
->runInBackground()
|
||||
->description('git-monitor-check')
|
||||
->when(fn() => \App\Services\ScheduledTaskService::isEnabled('git-monitor-check'));
|
||||
->when(fn () => \App\Services\ScheduledTaskService::isEnabled('git-monitor-check'));
|
||||
|
||||
// Git Monitor - 每天凌晨 2 点刷新 release 缓存
|
||||
Schedule::command('git-monitor:cache')
|
||||
->dailyAt('02:00')
|
||||
->withoutOverlapping()
|
||||
->description('git-monitor-cache')
|
||||
->when(fn() => \App\Services\ScheduledTaskService::isEnabled('git-monitor-cache'));
|
||||
->when(fn () => \App\Services\ScheduledTaskService::isEnabled('git-monitor-cache'));
|
||||
|
||||
// SLS 日志分析 - 每天凌晨 2 点执行(日志分析 + 代码分析)
|
||||
Schedule::command('log-analysis:run --from="-24h" --to="now" --query="content.level: ERROR" --mode=logs+code --push')
|
||||
@@ -41,8 +41,8 @@ Schedule::command('log-analysis:run --from="-24h" --to="now" --query="content.le
|
||||
->withoutOverlapping()
|
||||
->runInBackground()
|
||||
->description('daily-log-analysis')
|
||||
->when(fn() => \App\Services\ScheduledTaskService::isEnabled('daily-log-analysis'))
|
||||
->onFailure(fn() => Log::error('每日日志分析定时任务执行失败'));
|
||||
->when(fn () => \App\Services\ScheduledTaskService::isEnabled('daily-log-analysis'))
|
||||
->onFailure(fn () => Log::error('每日日志分析定时任务执行失败'));
|
||||
|
||||
// SLS 日志分析 - 每 4 小时执行一次
|
||||
Schedule::command('log-analysis:run --from="-6h" --to="now" --query="content.level: ERROR" --push')
|
||||
@@ -50,8 +50,8 @@ Schedule::command('log-analysis:run --from="-6h" --to="now" --query="content.lev
|
||||
->withoutOverlapping(60)
|
||||
->runInBackground()
|
||||
->description('frequent-log-analysis')
|
||||
->when(fn() => \App\Services\ScheduledTaskService::isEnabled('frequent-log-analysis'))
|
||||
->onFailure(fn() => Log::error('SLS 日志分析定时任务执行失败'));
|
||||
->when(fn () => \App\Services\ScheduledTaskService::isEnabled('frequent-log-analysis'))
|
||||
->onFailure(fn () => Log::error('SLS 日志分析定时任务执行失败'));
|
||||
|
||||
// Jenkins Monitor - 每分钟检查新构建
|
||||
Schedule::command('jenkins:monitor')
|
||||
@@ -59,11 +59,20 @@ Schedule::command('jenkins:monitor')
|
||||
->withoutOverlapping(10)
|
||||
->runInBackground()
|
||||
->description('jenkins-monitor')
|
||||
->when(fn() => \App\Services\ScheduledTaskService::isEnabled('jenkins-monitor'));
|
||||
->when(fn () => \App\Services\ScheduledTaskService::isEnabled('jenkins-monitor'));
|
||||
|
||||
// ERP OpenAPI 请求日报 - 每天早上 8 点统计前一天请求并发送钉钉
|
||||
Schedule::command('erp-request-report:send')
|
||||
->dailyAt('08:00')
|
||||
->timezone('Asia/Shanghai')
|
||||
->withoutOverlapping()
|
||||
->runInBackground()
|
||||
->description('erp-request-report')
|
||||
->when(fn () => \App\Services\ScheduledTaskService::isEnabled('erp-request-report'));
|
||||
|
||||
// 定时任务刷新 - 每天凌晨 3 点刷新定时任务列表
|
||||
Schedule::command('scheduled-task:refresh')
|
||||
->dailyAt('03:00')
|
||||
->withoutOverlapping()
|
||||
->description('scheduled-task-refresh')
|
||||
->when(fn() => \App\Services\ScheduledTaskService::isEnabled('scheduled-task-refresh'));
|
||||
->when(fn () => \App\Services\ScheduledTaskService::isEnabled('scheduled-task-refresh'));
|
||||
|
||||
+2
-1
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
use App\Http\Controllers\AdminController;
|
||||
use App\Http\Controllers\ProductionDiagnosisPageController;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
// 首页 - 显示admin框架
|
||||
@@ -9,7 +10,7 @@ Route::get('/', [AdminController::class, 'index'])->name('home');
|
||||
// 前端路由 - 所有页面都通过admin框架显示
|
||||
Route::get('/env', [AdminController::class, 'index'])->name('admin.env');
|
||||
Route::get('/sql-generator', [AdminController::class, 'index'])->name('admin.sql-generator');
|
||||
Route::get('/production-diagnosis', [AdminController::class, 'index'])->name('admin.production-diagnosis');
|
||||
Route::get('/production-diagnosis', ProductionDiagnosisPageController::class)->name('admin.production-diagnosis');
|
||||
Route::get('/weekly-report', [AdminController::class, 'index'])->name('admin.weekly-report');
|
||||
Route::get('/worklog', [AdminController::class, 'index'])->name('admin.worklog');
|
||||
Route::get('/test-mail', [AdminController::class, 'index'])->name('admin.test-mail');
|
||||
|
||||
Reference in New Issue
Block a user