一次php4Log无法记录日志的问题排查
业务里使用了php4Log组件进行日志记录。
What is Apache log4php?
Apache log4php™ is a versatile logging framework for PHP.
组件介绍见官网
昨天遇到个问题,代码里明明有调用记录日志的方法,但是tail -f 文件
就是看不到日志内容,没写到文件里去。
业务里使用了php4Log组件进行日志记录。
What is Apache log4php?
Apache log4php™ is a versatile logging framework for PHP.
组件介绍见官网
昨天遇到个问题,代码里明明有调用记录日志的方法,但是tail -f 文件
就是看不到日志内容,没写到文件里去。
业务自己搭建了一套elasticsearch服务,最近几天查询开始变的越来越不稳定。
查看健康度发现status已经变成了red。
[root@localhost ~]# curl 'http://xxx.xxx.xxx.xxx:9200/_cluster/health?pretty'
{
"cluster_name" : "imageIndex",
"status" : "red",
"timed_out" : false,
"number_of_nodes" : 4,
"number_of_data_nodes" : 4,
"active_primary_shards" : 4,
"active_shards" : 6,
"relocating_shards" : 1,
"initializing_shards" : 0,
"unassigned_shards" : 4,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 10
}
[root@localhost ~]#
问了下朋友,说是重启所有节点看看。
停止所有节点服务
curl -XPOST 'http://xxx.xxx.xxx.xxx:9200/_cluster/nodes/_shutdown'
分别启动每一个节点
./bin/elasticsearch -d
查看健康度
[user_00@localhost ~]$ curl 'http://xxx.xxx.xxx.xxx:9200/_cluster/health?pretty'
{
"cluster_name" : "imageIndex",
"status" : "yellow",
"timed_out" : false,
"number_of_nodes" : 4,
"number_of_data_nodes" : 4,
"active_primary_shards" : 5,
"active_shards" : 5,
"relocating_shards" : 0,
"initializing_shards" : 5,
"unassigned_shards" : 0,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0
}
今天业务新上线两台机器,功能测试中发现file_get_contents返回为false。
用curl的方式请求了下,返回了数据。
比较奇怪,查看php错误日志,发现有类似这样的错误。
PHP Warning: file_get_contents() [<a href='function.file-get-contents'>function.file-get-contents</a>]: http:// wrapper is disabled in the server configuration by allow_url_fopen=0
编辑php.ini,打开allow_url_fopen
选项,问题解决。
有业务代码如下:
$conn = new MongoClient('mongodb://127.0.0.1:27017');
$db = $conn->database->table;
$start = 0;
$limit = 200;
while (1) {
$conditions = array(
'id' => array(
'$gt' => $start,
),
);
$dataList = $db->find($conditions)->limit($limit);
// 这里需要知道查询到最后,跳出while循环
foreach ($dataList as $data) {
// 业务处理代码
}
}
今天遇到客户反馈自定义域名不能添加,提示未找到记录。
客户说这个域名解析已经配置了超过1天了。
通过nslookup
命令,看到已经解析到对应的域名上了。
var_dump(dns_get_record('res.yankeke.com', DNS_CNAME));
// 输出空数组
array(0) {
}
var_dump(dns_get_record('res.yankeke.com'));
// 输出数组,可以看到有type=CNAME的记录
array(1) {
[0]=>
array(5) {
["host"]=>
string(15) "res.yankeke.com"
["type"]=>
string(5) "CNAME"
["target"]=>
string(35) "yankeke-10009029.image.myqcloud.com"
["class"]=>
string(2) "IN"
["ttl"]=>
int(300)
}
}
但是其他域名通过上面第一种代码是可以查到CNAME记录的,唯一的不同在于res.yankeke.com
这个域名的ns记录是云加速的。