Files
sam-api/app/Providers/AppServiceProvider.php

47 lines
1.2 KiB
PHP
Raw Normal View History

2025-07-17 10:05:47 +09:00
<?php
namespace App\Providers;
use Illuminate\Database\Eloquent\Builder;
2025-07-17 10:05:47 +09:00
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\DB;
use App\Models\Commons\Menu;
use App\Observers\MenuObserver;
2025-07-17 10:05:47 +09:00
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*/
public function register(): void
{
// 개발환경 + API 라우트에서만 쿼리 로그 수집
if (app()->environment('local')) {
// 콘솔/큐 등 non-HTTP 컨텍스트 보호
if (function_exists('request') && request() && request()->is('api/*')) {
DB::enableQueryLog();
}
}
2025-07-17 10:05:47 +09:00
}
/**
* Bootstrap any application services.
*/
public function boot(): void
{
// DB::enableQueryLog();
Builder::macro('debug', function($debug = null) {
if (is_null($debug) && app()->environment('local')) {
$debug = true;
}
if ($debug) {
\DB::enableQueryLog();
}
return $this;
});
// 메뉴 생성/수정/삭제 ↔ 권한 자동 동기화
Menu::observe(MenuObserver::class);
2025-07-17 10:05:47 +09:00
}
}