IT関連

AS400/IBMi Laravelでユーザーの使用ログを取る

投稿日:

ユーザーにデータベースの内容を照会するシステムを作ってきたけど、ログを取らないと、誰がどんなメニューを使ったのか、このメニューは誰か使ってくれているのかが解らないので、ログを取るようにしたい。

手順は、

  1. ログ用のテーブルを作る
  2. ログ用テーブルのモデルを作る
  3. モデルの中に記録を書き込むファンクションを作る
  4. コントローラーからモデルを呼び出す

こんな感じだけど、いちいち全てのコントローラーに仕込むのは面倒なので、ミドルウェアに登録して全てで呼び出すようにする。

 

ログ用テーブル

本当は他にもあるけど最低限こんな感じ。

日付と時刻と使用者名とパスです。

スキーマはHOGELIBで、テーブルはLOGTABLEにする。

 

ログテーブル用のモデルとファンクション

‘使用者’は自分のプログラム内で引っ張るようにすること。

 

ミドルウェアを作成

作り方はコマンドを叩く。

自分のXAMPPテスト環境に作るので、コマンドプロンプトを開き、cdでhtdocsフォルダまで移動する。

コマンドは下記。ミドルウェアの名前はRecにした。RecMiddleware。

これでRecMiddlewareが、Http直下Controllersと同じ階層にあるMiddlewareの中に出来る。

 

ミドルウェアを修正

下記のように修正してミドルウェアからモデルとファンクションにアクセスするようにする。

 

ミドルウェアを毎回呼び出すようにする

Http直下にあるKernel.phpを開き$middlewareに追記する。カンマを忘れないように注意。

 

これでいけるはず。どこのメニューに誰がアクセスしても記録されているはず。

後は本番にpushするだけ。

スポンサーリンク




スポンサーリンク




-IT関連
-, ,

執筆者:


comment

Your email address will not be published. Required fields are marked *

関連記事

ドットインストールのLaravelレッスン環境構築

ドットインストールでLaravelを勉強しようと思ったら開発環境の構築がよくわからない。 VagrantやLaravelのバージョンの違いのせいか、その通りにやっても動かない。 問い合わせをしようも絶 …

Git .gitignoreが利かないというかおかしい件

ブログなので皆さまのお役にたてば幸いですが、あくまで自分の忘備録なので、昔話も含めて書いております。ご了承ください。 環境は、 開発環境は自席PC(ローカル) Windows10PC XAMPP7.2 …

MacからWindowsにリモートするとVSCodeのカーソルが見えない

VSCodeのバグなのか、背景色をダークにしてコードエリアにカーソルを当てると、背景も黒でアイ型のカーソルも黒なので見えなくなる。   VSCodeの設定を見てもそれらしいものはないので、W …

Windows まだWin7の人は急げ Windows10 無償アップグレード まだいける

*最後に追記あります。作業をされるなら最後まで読んだ上でトライしてみてください。いづれにせよ私は何の責任も負いません。   皆さんご存知だと思いますが、   Windows7のパソ …

PHP 設定関連

php.ini ERROR_REPORTING デフォルトのエラー表示が過剰なのでいつも変更している。 デフォルトは、error_reporting=E_ALL & ~E_DEPRECATED …

Adsense広告




文字で検索

人気記事

なぜだか人気記事

読んでほしい順に