update
This commit is contained in:
@@ -0,0 +1,178 @@
|
||||
<?php
|
||||
|
||||
if (!defined('WPVIVID_PLUGIN_DIR')){
|
||||
die;
|
||||
}
|
||||
class WPvivid_Log
|
||||
{
|
||||
public $log_file;
|
||||
public $log_file_handle;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->log_file_handle=false;
|
||||
}
|
||||
|
||||
public function CreateLogFile($file_name,$type,$describe)
|
||||
{
|
||||
if($type=='has_folder')
|
||||
{
|
||||
$this->log_file=$file_name;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->log_file=$this->GetSaveLogFolder().$file_name.'_log.txt';
|
||||
}
|
||||
if(file_exists($this->log_file))
|
||||
{
|
||||
@wp_delete_file( $this->log_file);
|
||||
}
|
||||
$this->log_file_handle = fopen($this->log_file, 'a');
|
||||
$offset=get_option('gmt_offset');
|
||||
$time =gmdate("Y-m-d H:i:s",time()+$offset*60*60);
|
||||
$text='Log created: '.$time."\n";
|
||||
$text.='Type: '.$describe."\n";
|
||||
fwrite($this->log_file_handle,$text);
|
||||
|
||||
return $this->log_file;
|
||||
}
|
||||
|
||||
public function OpenLogFile($file_name,$type='no_folder',$delete=0)
|
||||
{
|
||||
if($type=='has_folder')
|
||||
{
|
||||
$this->log_file=$file_name;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->log_file=$this->GetSaveLogFolder().$file_name.'_log.txt';
|
||||
}
|
||||
if($delete==1)
|
||||
{
|
||||
wp_delete_file( $this->log_file);
|
||||
}
|
||||
$this->log_file_handle = fopen($this->log_file, 'a');
|
||||
|
||||
return $this->log_file;
|
||||
}
|
||||
|
||||
public function WriteLog($log,$type)
|
||||
{
|
||||
if ($this->log_file_handle)
|
||||
{
|
||||
$offset=get_option('gmt_offset');
|
||||
$time =gmdate("Y-m-d H:i:s",time()+$offset*60*60);
|
||||
$text='['.$time.']'.'['.$type.']'.$log."\n";
|
||||
fwrite($this->log_file_handle,$text );
|
||||
}
|
||||
}
|
||||
|
||||
public function CloseFile()
|
||||
{
|
||||
if ($this->log_file_handle)
|
||||
{
|
||||
fclose($this->log_file_handle);
|
||||
$this->log_file_handle=false;
|
||||
}
|
||||
}
|
||||
|
||||
public function GetSaveLogFolder()
|
||||
{
|
||||
include_once plugin_dir_path( dirname( __FILE__ ) ) . 'includes/class-wpvivid-setting.php';
|
||||
|
||||
$options = WPvivid_Setting::get_option('wpvivid_common_setting');
|
||||
|
||||
if(!isset($options['log_save_location']))
|
||||
{
|
||||
//WPvivid_Setting::set_default_common_option();
|
||||
$options['log_save_location']=WPVIVID_DEFAULT_LOG_DIR;
|
||||
update_option('wpvivid_common_setting', $options, 'no');
|
||||
|
||||
$options = WPvivid_Setting::get_option('wpvivid_common_setting');
|
||||
}
|
||||
|
||||
if(!is_dir(WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$options['log_save_location']))
|
||||
{
|
||||
@mkdir(WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$options['log_save_location'],0777,true);
|
||||
//@fopen(WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$options['log_save_location'].DIRECTORY_SEPARATOR.'index.html', 'x');
|
||||
$tempfile=@fopen(WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$options['log_save_location'].DIRECTORY_SEPARATOR.'.htaccess', 'x');
|
||||
if($tempfile)
|
||||
{
|
||||
//$text="deny from all";
|
||||
$text="<IfModule mod_rewrite.c>\r\nRewriteEngine On\r\nRewriteRule .* - [F,L]\r\n</IfModule>";
|
||||
fwrite($tempfile,$text );
|
||||
}
|
||||
}
|
||||
|
||||
return WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$options['log_save_location'].DIRECTORY_SEPARATOR;
|
||||
}
|
||||
|
||||
public function WriteLogHander()
|
||||
{
|
||||
if ($this->log_file_handle)
|
||||
{
|
||||
global $wp_version;
|
||||
global $wpdb;
|
||||
|
||||
$sapi_type=php_sapi_name();
|
||||
if($sapi_type=='cgi-fcgi'||$sapi_type==' fpm-fcgi') {
|
||||
$fcgi='On';
|
||||
}
|
||||
else {
|
||||
$fcgi='Off';
|
||||
}
|
||||
|
||||
$options=WPvivid_Setting::get_option('wpvivid_common_setting');
|
||||
if(isset($options['max_execution_time'])) {
|
||||
$max_execution_time=$options['max_execution_time'];
|
||||
}
|
||||
else {
|
||||
$max_execution_time=WPVIVID_MAX_EXECUTION_TIME;
|
||||
}
|
||||
|
||||
$log='server info fcgi:'.$fcgi.' max execution time: '.$max_execution_time.' wp version:'.$wp_version.' php version:'.phpversion().' db version:'.$wpdb->db_version().' php ini:safe_mode:'.ini_get('safe_mode').' ';
|
||||
$log.='memory_limit:'.ini_get('memory_limit').' memory_get_usage:'.size_format(memory_get_usage(),2).' memory_get_peak_usage:'.size_format(memory_get_peak_usage(),2);
|
||||
$log.=' extensions:';
|
||||
$loaded_extensions = get_loaded_extensions();
|
||||
if(!in_array('PDO', $loaded_extensions))
|
||||
{
|
||||
$log.='PDO not enabled ';
|
||||
}
|
||||
else
|
||||
{
|
||||
$log.='PDO enabled ';
|
||||
}
|
||||
if(!in_array('curl', $loaded_extensions))
|
||||
{
|
||||
$log.='curl not enabled ';
|
||||
}
|
||||
else
|
||||
{
|
||||
$log.='curl enabled ';
|
||||
}
|
||||
|
||||
if(!in_array('zlib', $loaded_extensions)) {
|
||||
$log .= 'zlib not enabled ';
|
||||
}
|
||||
else
|
||||
{
|
||||
$log.='zlib enabled ';
|
||||
}
|
||||
|
||||
$log.=' ';
|
||||
if(is_multisite())
|
||||
{
|
||||
$log.=' is_multisite:1';
|
||||
}
|
||||
else
|
||||
{
|
||||
$log.=' is_multisite:0';
|
||||
}
|
||||
|
||||
$offset=get_option('gmt_offset');
|
||||
$time =gmdate("Y-m-d H:i:s",time()+$offset*60*60);
|
||||
$text='['.$time.']'.'[notice]'.$log."\n";
|
||||
fwrite($this->log_file_handle,$text );
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user