Ckan信息级别日志转到错误日志文件

时间:2015-10-16 06:41:01

标签: ckan

我使用apache在debian上安装了Ckan跟随官方文档,所有它都可以,但所有ckan信息日志都被写入错误日志文件。

这是我的虚拟主机:

//onclick creating textboxes

$scope.expndtxt=function(){


        $scope.textboxes.push("");

    };

//view 

    <li ng-repeat="textbox in textboxes track by $index">
                Label For Inputfield:
                    <input type="text" id="in_{{$index}}" data-ng-model="$parent.textboxes[$index]"/><button class="btn btn-sm btn-default" ng-click="deletetxtbox($index)">-</button>
            </li>

这是我的ckan_default.error.log:

的一行
<VirtualHost *:80>
  ServerName ckan.mydomain.com
  ServerAlias ckan.mydomain.com
  WSGIScriptAlias / /etc/ckan/default/apache.wsgi

  # Pass authorization info on (needed for rest api).
  WSGIPassAuthorization On

  # Deploy as a daemon (avoids conflicts between CKAN instances).
  WSGIDaemonProcess ckan_default display-name=ckan_default processes=2 threads=15

  WSGIProcessGroup ckan_default

  ErrorLog /var/log/apache2/ckan_default.error.log
  CustomLog /var/log/apache2/ckan_default.custom.log combined

  <IfModule mod_rpaf.c>
      RPAFenable On
      RPAFsethostname On
      RPAFproxy_ips 127.0.0.1
  </IfModule>
</VirtualHost>

为什么会这样     [:错误]  为什么这行在ckan_default.error.log中?

感谢。 亚历

1 个答案:

答案 0 :(得分:1)

CKAN的默认配置只是将日志发送到stderr,如ckan/config/deployment.ini_tmpl中所示:

[handler_console]
class = StreamHandler
args = (sys.stderr,)
level = NOTSET
formatter = generic

Apache将stderr保存到其ErrorLog,因此你可以在ckan_default.error.log中看到它。

Apache的文档说这是:

  

Apache httpd将发送诊断信息并记录任何信息   它遇到的错误

所以我认为在其中包含CKAN的INFO消息以及警告(非致命错误)和ERRORs并不是太疯狂。

CKAN的默认设置是最简单的设置方式,这就是在此提交中删除文件处理程序的原因:https://github.com/ckan/ckan/commit/6e1d325d61e

但当然这是妥协,欢迎所有建议。