dongyi6668 2017-01-24 09:30
浏览 65
已采纳

日志文件与数据库在哪里保存用户活动数据以进行分析?

I am currently working on a website which have functionality of login. I need to track user activities like time of login-logout, total duration of browsing, IP Address , location etc. This all data will be used for analysis and security purposes.

Now , there are two options (at least i know) to save such a huge data either in database or in log files.

What is right thing to do save in DB or in logs? .

In case anyone wants to know, i am using using PHP as programming language and MySQL as DB and don't have any experience in data analysis.

  • 写回答

4条回答 默认 最新

  • dongli8979 2017-01-24 09:47
    关注

    Better to go with DB because if you want to analyze or sort login tries by IP, location ..etc. you can easily do that with MySQL queries but when you go to log you should have an editor and search for something will be really hard. I personally log the same functionality in my app here is some code how to get browser info and IP.

    <?php
    
    function log_login_activity($loginEmail, $loginAuthType = '', $loginAttemptStatus = '', $error = '', $loginRedirect = '',$HeaderInfo = ''){
        $loginTime = time();
        $browserInfo = getBrowser();
        $browser = $browserInfo['name'].' '.$browserInfo['version'];
        $loginIP = isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];
        $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "HTTPS" : "HTTP";
        $browserAgent = $browserInfo['userAgent'];
        DB::insert('?:login_logs',array('email' => $loginEmail, 'time' =>$loginTime, 'browserInfo' =>$browser, 'loginAuthType' =>$loginAuthType, 'IP' =>$loginIP, 'error' => $error, 'protocol' => $protocol, 'loginRedirect' => $loginRedirect, 'browser' => $browserAgent));
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 openwrt双栈NAT
  • ¥15 部分网页页面无法显示!
  • ¥15 怎样解决power bi 中设置管理聚合,详细信息表和详细信息列显示灰色,而不能选择相应的内容呢?
  • ¥15 QTOF MSE数据分析
  • ¥15 平板录音机录音问题解决
  • ¥15 请问维特智能的安卓APP在手机上存储传感器数据后,如何找到它的存储路径?
  • ¥15 (SQL语句|查询结果翻了4倍)
  • ¥15 Odoo17操作下面代码的模块时出现没有'读取'来访问
  • ¥50 .net core 并发调用接口问题
  • ¥15 网上各种方法试过了,pip还是无法使用