【发布时间】:2021-09-20 13:00:28
【问题描述】:
我已经用composer create-project --prefer-dist laravel/lumen demo 设置了 Laravel 流明的基本示例。我使用的是 Lumen 版本 8。
我的 .env 文件看起来像
APP_NAME=Lumen
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_URL=http://localhost
APP_TIMEZONE=UTC
LOG_CHANNEL=stack
LOG_SLACK_WEBHOOK_URL=
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=mysql
DB_USERNAME=root
DB_PASSWORD=
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
我创建了一个控制器TrackerController 并在routes/web.php 中调用它。
// /app/Http/Controllers/TrackerController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Log;
use Illuminate\Http\Request;
class TrackerController extends Controller {
public function index(Request $request) {
Log::info('message');
return 'ok';
}
}
我的/app/routes/web.php 看起来像
<?php
$router->get('/','TrackerController@index');
我想将日志记录添加到标准输出(以便以后可以将该数据通过管道传输到 AWS ElasticBeanstalk 中的 Cloudwatch),据我了解,这是开箱即用的,但我似乎无法获得它可以工作。
每当我在控制器中执行Log::info('message'); 时,我都会得到A facade root has not been set.。
没有Log::info('message');,一切都按预期工作。
【问题讨论】:
-
您是否取消了
bootstrap/app.php文件中$app->withFacades()的注释? -
确实做到了!