codeigniter 日志消息代码点火器

vltsax25  于 2022-12-06  发布在  其他
关注(0)|答案(4)|浏览(151)

我想在Codeigniter中使用log_message,但是log_message没有在日志文件中写入任何内容。

$config['log_threshold'] = 4;

$config['log_path'] = 'http://spsvn01/var/www/html/RAIDLOG/application/logs/';

在我的控制器里我写着:

log_message('error','USER_INFO '.$user_info['email']);

多谢了!

tpxzln5u

tpxzln5u1#

我将使用指向应用程序文件夹的FCPATH常量:

$config['log_threshold'] = 4;
$config['log_path'] = FCPATH . '/application/logs/';

我这边很好用。
http://www.codeigniter.com/user_guide/general/errors.html

信息性消息

log_message('info', 'USER_INFO ' . $user_info['email']);

错误消息

log_message('error', 'USER_INFO ' . $user_info['email']);

此外,日志文件夹必须是可写的。请对文件夹执行CHMOD 700

ppcbkaq5

ppcbkaq52#

打开您的项目目录/application/config/config. php
在配置文件中,你会发现3个默认变量

$config['log_threshold']=0; 
$config['log_path'] = ''; 
$config['log_file_extension'] = '';

1.$config ['log_threshold']接受数组(1,2,3)或单个整数$config ['log_path']接受日志文件的路径(如果保留为空,则将设置默认路径,默认路径为your_project_dir/application/logs/)。
1.$config ['log_file_extension']接受日志文件的扩展名,如html,txt等(如果您将其留空,则默认扩展名为php)
1.确保日志路径是可写的。

错误状态已定义

your_project_dir/system/core/Log.php

protected $_levels = array('ERROR' => 1, 'DEBUG' => 2, 'INFO' => 3, 'ALL' => 4)

您必须指定数组,即错误和信息数组(1,2)方法log_message('','')接受2个参数。第一个参数是级别(即ERROR或DEBUG或INFO或ALL),第二个参数是消息。

范例:

log_message('ERROR', 'Custom error here.');

记住如果您指定了

$config['log_threshold']=array(1)

**对于自定义日志:**您必须在your_project_dir/system/core/Log.php中添加一个新的数组元素,例如:

protected $_levels = array('ERROR' => 1, 'DEBUG' => 2, 'INFO' => 3, 'ALL' => 4, 'CUSTOM' => 5);

现在可以调用方法

log_message('CUSTOM', 'Custom message here.'); // This will put just your custom messages in log file
vq8itlhq

vq8itlhq3#

就这么简单:

$config['log_threshold'] = 4;

$config['log_path'] = '/logs/';
a6b3iqyw

a6b3iqyw4#

这是一个老职位,但可以帮助别人:我的codeigniter日志尚未写入,因此我转到日志文件夹并执行以下命令:sudo chown www-数据日志/
将用户www-data转换为文件夹的所有者,然后转换为其工作。

相关问题