Ich arbeite an einer Multi-Tenant-App, bei der ich viel mehr Daten protokollieren muss, als ich an die Protokollfassade übergebe. Was ich meine ist, dass ich jedes Mal, dies zu tun ...Kontextinformationen protokollieren (ohne sie explizit anzugeben)
Log::info('something happened');
ich diese:
[2017.02.15 18.12.55] local.INFO: etwas passiert
Aber ich will diese bekommen:
[2017.02.15 18.12.55] [meine EC2-Instanz-ID] [client_id] local.INFO: etwas passiert
Wie Sie sehen können, protokolliere ich die EC2-Instanz-ID und die Client-ID meiner App. Ich vereinfache das natürlich, da ich dort viel mehr Sachen loggen muss. Wenn ich diese Protokolle aufnehme und aggregiere, sind sie mit diesen zusätzlichen Feldern unglaublich praktisch, um herauszufinden, welche Dinge wo und wo schief gelaufen sind.
Im Zend Framework unterklassiere ich normalerweise den Logger und füge diese zusätzlichen Felder in meine Unterklasse ein, aber ich bin mir nicht sicher, wie ich das mit Laravel machen kann. Ich kann nicht finden, wo der Logger instanziiert ist, damit ich meinen benutzerdefinierten Logger einstecken kann (wenn das in Laravel auch so ist).
Also frage ich nicht, wie man die EC2-Instanz-ID und die anderen Sachen, ich frage nur, was die richtige Art und Weise zu "heißen Draht" der Laravel Logger ist in der Lage sein, dies zu stecken.