vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 General Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=111)
-   -   Can I set a scheduled task to email the previous 24 hours of CP log? (https://vborg.vbsupport.ru/showthread.php?t=265937)

Steven W Hill 06-28-2011 09:42 PM

Can I set a scheduled task to email the previous 24 hours of CP log?
 
As in thread title... I'd like to find a convenient way to quickly scan my control panel log every day, and my thought was to find a way to set up a scheduled task that would send me an email containing the previous day's control panel log activity. That way, every morning I can just open my email and give it a quick look.

Is that possible? Or a variation of such? Or are there other, better ideas?

I have vBulletin 3.8.2.

Eric 06-29-2011 01:13 AM

It is possible, yes.

You could, for example, create a plugin at the 'cron_script_cleanup_daily' hook with:

(not tested, but you get the idea)

PHP Code:

$cplogs $vbulletin->db->query_read_slave("
    SELECT adminlog.*,user.username
    FROM " 
TABLE_PREFIX "adminlog AS adminlog
    LEFT JOIN " 
TABLE_PREFIX "user AS user USING(userid)
    WHERE TIMESTAMPDIFF(DAY, FROM_UNIXTIME(adminlog.dateline), FROM_UNIXTIME(UNIX_TIMESTAMP())) <= 1
    ORDER BY adminlog.adminlogid DESC
"
);

if (
$vbulletin->db->num_rows($cplogs) > 0)
{
    
$message "ID\tUsername\tDate\tScript\tAction\tExtra Info\tIP Address\n";

    while (
$cplog $vbulletin->db->fetch_array($cplogs))
    {
        
$message .= "$cplog[adminlogid]\t" iif(!empty($log['username']), $log['username'], $vbphrase['n_a']) . "\t";
        
$message .= vbdate($vbulletin->options['logdateformat'], $log['dateline']) . "\t" htmlspecialchars_uni($log['script']);
        
$message .= htmlspecialchars_uni($log['action']) . "\t" htmlspecialchars_uni($log['extrainfo']) . "\t";
        
$message .= iif($log['ipaddress'], $log['ipaddress'], '&nbsp;') . "\n";
    }

    
$message trim($message);

    
vbmail(
        
'you@example.com'
        
"{$vbulletin->options['bbtitle']}: Control Panel Logs"
        
$message
    
);
}

$vbulletin->db->free_result($cplogs); 



All times are GMT. The time now is 09:18 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01342 seconds
  • Memory Usage 1,724KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (2)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete