我可以看到腳本是否正在使用App::runningInConsole()
命令在控制檯中運行,但我想知道(用於審計日誌記錄目的)哪個命令已從控制檯運行。如何獲取Laravel中的當前控制檯命令
要添加一些上下文 - 當系統或用戶訪問特定類型的數據時,我需要記錄日誌。對於用戶來說,這非常簡單 - 我可以使用Auth::user()
並從Request
獲取其IP地址,但對於控制檯命令而言,這有點困難。
我可以弄清楚是否有一個控制檯命令正在運行,這很好,但我需要能夠記錄哪個控制檯命令正在運行。
是的,我希望只有一些記錄不完善的laravel功能可以調用(比如'App :: currentCommand()'或其他)。在調用命令的命令的實例中,我寧願記錄內部命令。 – samlev
當laravel執行一個命令時,它會更新它所運行的進程的名稱。如果你爲你的命令設置了$ processTitle,你應該通過調用「cli_get_process_title()」來取回你放置的任何東西,只要確保你在CLI中模式。 –
如果設置「protected $ processTitle = _ _ CLASS _ _;」你會得到你所需要的,但我會稱它爲黑客,而不是功能。 –