Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 25.10.2017 18:26:48

В AppServiceProvider ошибка при проверке сессии ?

Всем привет,
При ображении к методам сессии :

        $request= Request();
        if ( $request->session()->has('sqlmonitor_tracing_on') and !empty($contents) ) {  

в файле app/Providers/AppServiceProvider.php

Получил ошибку:

[2017-10-25 15:07:28] local.ERROR: Session store not set on request. {"exception":"[object] (RuntimeException(code: 0): Session store not set on request. at /vendor/laravel/framework/src/Illuminate/Http/Request.php:414)[stacktrace]
#0 /app/Providers/AppServiceProvider.php(426): Illuminate\\Http\\Request->session()
#1 /app/Providers/AppServiceProvider.php(156): App\\Providers\\writeSqlToLog('   SELECT * \

При обработке событий на sql-запрос :

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        ...
        if ($this->app->environment('local')) {
            ...

            \DB::listen(function($query) {
               ...
               writeSqlToLog($str, 'Time ' . $query->time.' : '.PHP_EOL);

Хотелось в приложении смотреть все sql-запросы в самом приложении, что-то вроде:
админ заходит на специальную панельку, жмет “Start Tracing”.
в сессии устанавливается ключ.
В AppServiceProvider проверять этот ключ и если он установлен, то все запросы добавлять в массив, который хранить в самой сессии(или может файл на диске).
На той же специальнрй панельке админ жмет “Stop Tracing”.

Получиться так и как исправить ошибку выше?

  Спасибо !

Не в сети

#2 26.10.2017 10:12:16

Re: В AppServiceProvider ошибка при проверке сессии ?

Если хочешь запросы логировать, посмотри в сторону https://gist.github.com/Ellrion/2edef2e … 2af9beac2b

Не в сети

#3 26.10.2017 10:35:19

Re: В AppServiceProvider ошибка при проверке сессии ?

Не в сети

Подвал раздела