I registri del lume sono scritti su /storage/logs
e per impostazione predefinita viene indicato il nome lumen.log
. Come cambio il nome del file per dire xyz.log
?Laravel Lumen cambia il nome del file di registro
risposta
Come menzionato nei commenti, la posizione e il nome del file di registro sono hardcoded.
Ora, se per qualche motivo valido si desidera modificarlo, è sempre possibile estendere la classe Laravel\Lumen\Application
e sovrascrivere il metodo getMonologHandler()
.
Creare un nuovo file in Application.php
app
cartella che assomiglia
namespace App;
use Laravel\Lumen\Application as LumenApplication;
use Monolog\Formatter\LineFormatter;
use Monolog\Handler\StreamHandler;
use Monolog\Logger;
class Application extends LumenApplication
{
protected function getMonologHandler()
{
return (new StreamHandler(storage_path(env('APP_LOG_PATH', 'logs/xyz.log')), Logger::DEBUG))
->setFormatter(new LineFormatter(null, null, true, true));
}
}
Ora cambiare
$app = new Laravel\Lumen\Application(
a
$app = new App\Application(
in bootstrap\app.php
file di
Voilà il tuo file di registro ora si chiama xyz.log
. Più sopra si può cambiare a quello che vuoi definendo la variabile d'ambiente APP_LOG_PATH
cioè tramite .env
file di
APP_LOG_PATH=logs/abc.log
Grazie per questa risposta completa. Quanto sopra funziona esattamente come dichiarato. Registrando felicemente i log su richiesta. – HamptonNorth
C'è un metodo pubblico disponibile configureMonologUsing
visto here e referenziata here che è possibile utilizzare per ignorare il comportamento predefinito senza estendere l'applicazione.
Ecco come si usa nel vostro bootstrap/app.php:
$app->configureMonologUsing(function(Monolog\Logger $monolog) {
$handler = (new \Monolog\Handler\StreamHandler(storage_path('/logs/xyz.log')))
->setFormatter(new \Monolog\Formatter\LineFormatter(null, null, true, true));
return $monolog->pushHandler($handler);
});
Bonus: anche checkout monologo di RotatingFileHandler
.
Si noti che se si utilizza un percorso * absolute *, è necessario escludere la funzione 'storage_path'. Altrimenti, funziona come previsto. –
- 1. Laravel/Lumen: Visualizza :: condivisione() alternativa?
- 2. Laravel 5/Lumen Request Header?
- 3. Logback - insieme il nome del file di registro di programmazione
- 4. Conversione di un'applicazione laravel in lumen
- 5. Cambia il nome del file di caricamento in cURL?
- 6. Cambia il nome del file di guerra in sbt 11.2
- 7. SQL tra due colonne in laravel/Lumen
- 8. Apache alias per laravel e Lumen
- 9. Laravel 5 - modifica la posizione del registro predefinito, spostamento del file di registro all'esterno dell'app
- 10. Plugin PHPStorm per Lumen proprio come Laravel
- 11. Laravel Lumen Garantire la risposta JSON
- 12. Django ImageField cambia il nome del file al caricamento
- 13. È possibile utilizzare i simboli cirillici in Lumen (di Laravel)?
- 14. Cambia il nome del file di log alcune volte durante il runtime
- 15. Desidera datetime nel nome del file di registro
- 16. Cambia il nome del file di guerra generato e il file di guerra duplicato
- 17. Cambia l'estensione del file
- 18. Laravel/lumen 5.2 genera tabelle di migrazione dal database esistente
- 19. Modifica fuso orario in Lumen o Laravel 5
- 20. ClearCase: cambia il nome del tipo di diramazione?
- 21. Lumen make: comando
- 22. Nome file personalizzato in un file di registro Log4Net progressivo?
- 23. Cambiare il nome di created_at del laravel e updated_at
- 24. Registro di Django rotante e proprietà del file di registro
- 25. Cambia il formato della data laravel 5
- 26. Cambia il nome del pacchetto in progetti PhoneGap esistenti
- 27. Come aggiungere l'indice di rotazione PRIMA dell'estensione del file nel nome file di registro
- 28. in Ansible, Come posso impostare dinamicamente il nome del file di registro
- 29. Cambia livello registro in unittest
- 30. Recupero del percorso di installazione del file dal registro
Il nome file [è hardcoded] (https://github.com/laravel/lumen-framework/blob/f018f423daba627d577e217100d9db82db9aeb10/src/Application.php#L604) nel core del framework. Non sono sicuro se può essere sostituito. –