ejabberd:即使使用调试日志级别 (5),记录到 /var/log/ejabberd/ejabberd.log 也不完整

ejabberd:即使使用调试日志级别 (5),记录到 /var/log/ejabberd/ejabberd.log 也不完整

我有ejabberd 15.09来自测试运行于Debian 8.2 “杰西”稳定的) 服务器。

由于从 ejabberd 升级稳定的/var/log/ejabberd/ejabberd.log 的日志记录似乎已损坏。即使loglevel设置为5(debug),也不会记录用户活动。

这是我的/etc/ejabberd/ejabberd.yml

hosts:
  - "somehost.tld"

language: "en"

loglevel: 4
max_fsm_queue: 1000

auth_method: odbc
odbc_database: "ejabberd"
odbc_keepalive_interval: 3600
odbc_password: "xxxxxxx"
odbc_port: 3306
odbc_server: "127.0.0.1"
odbc_type: mysql
odbc_username: "ejabberdusr"

registration_timeout: 600

captcha_cmd: "/usr/lib/x86_64-linux-gnu/ejabberd/priv/bin/captcha.sh"
captcha_host: "http://somehost.tld:5280"
captcha_limit: 5

define_macro:
  'TLS_CIPHERS': "ECDH:DH:!CAMELLIA128:!3DES:!MD5:!RC4:!aNULL:!NULL:!EXPORT:!LOW:!MEDIUM"

include_config_file:
  "/etc/ejabberd/conf/access.yml": []
  "/etc/ejabberd/conf/acl.yml": []

listen:
  -
    port: 5222
    module: ejabberd_c2s
    certfile: "/etc/ejabberd/cert/somehost.tld.pem"
    dhfile: "/etc/ejabberd/dhparams.pem"
    starttls: true
    starttls_required: true
    stream_management: true
    max_ack_queue: 1000
    resend_on_timeout: true
    max_stanza_size: 65536
    shaper: c2s_shaper
    access: c2s
    protocol_options:
      - "no_sslv3"
    ciphers: 'TLS_CIPHERS'
    resend_on_timeout: if_offline
    zlib: true
  -
    port: 5269
    module: ejabberd_s2s_in
    transport: tcp
    max_stanza_size: 131072
    shaper: s2s_shaper
  -
    port: 5280
    module: ejabberd_http
    web_admin: true
    captcha: true

modules:
  mod_adhoc: []

  mod_announce:
    access: announce

  mod_blocking: {} # requires mod_privacy
  mod_caps: []
  mod_carboncopy: {}
  mod_configure: []
  mod_admin_extra: []
  mod_disco: []
  mod_irc: []
  mod_last: []

   mod_muc:
    host: "muc.@HOST@"
    access: all
    access_create: all
    access_persistent: all
    access_admin: muc_admin
    max_users: 500
    history_size: 1000
    default_room_options:
      allow_change_subj: true
      allow_private_messages: true
      allow_private_messages_from_visitors: anyone
      allow_query_users: false
      allow_user_invites: true
      allow_visitor_nickchange: true
      allow_visitor_status: true
      anonymous: false
      captcha_protected: false
      logging: true
      max_users: 200
      members_by_default: true
      members_only: false
      moderated: false
      password_protected: false
      persistent: false
      public: true
      public_list: true

  mod_muc_log:
    access_log: muc_admin
    dirname: room_name
    dirtype: subdirs
    file_format: html
    outdir: "/var/www/muc"
    spam_prevention: false
    timezone: local
    top_link:
      "/": "Jedem das Seine."

  mod_offline:
    access_max_user_messages: max_user_offline_messages

  mod_ping: {}
  mod_privacy: []
  mod_private: []
##  mod_proxy65:
##    access: all
##    shaper: c2s_shaper
  mod_pubsub:
    access_createnode: pubsub_createnode
    pep_sendlast_offline: false
    last_item_cache: false
    plugins:
      - "flat"
      - "hometree"
      - "pep"

  mod_register:
    welcome_message:
      subject: "Welcome!"
      body: "Hello to the server."
    captcha_protected: true
    access: register

  mod_roster: []
  mod_shared_roster: {}
  mod_stats: []
  mod_time: []
  mod_vcard: []
  mod_version: []

  mod_mam:
    db_type: odbc
    default: never

outgoing_s2s_port: 5269
outgoing_s2s_timeout: 10000
s2s_access: s2s
s2s_certfile: "/etc/ejabberd/cert/somehost.tld.pem"
s2s_dhfile: "/etc/ejabberd/dhparams.pem"
s2s_use_starttls: required
s2s_protocol_options:
  - "no_sslv3"
s2s_ciphers: 'TLS_CIPHERS'
shaper:
  normal: 1000
  fast: 50000
watchdog_admins:
  - []
auth_password_format: plain
fqdn: "somehost.tld"

设置完loglevel之后4我得到的全部内容/var/log/ejabberd/ejabberd.log是:

2015-10-27 11:46:08.796 [info] <0.7.0> Application lager started on node ejabberd@somehost
2015-10-27 11:46:08.801 [info] <0.7.0> Application crypto started on node ejabberd@somehost
2015-10-27 11:46:08.808 [info] <0.7.0> Application sasl started on node ejabberd@somehost
2015-10-27 11:46:08.813 [info] <0.7.0> Application asn1 started on node ejabberd@somehost
2015-10-27 11:46:08.813 [info] <0.7.0> Application public_key started on node ejabberd@somehost
2015-10-27 11:46:08.818 [info] <0.7.0> Application ssl started on node ejabberd@somehost
2015-10-27 11:46:08.822 [info] <0.7.0> Application p1_yaml started on node ejabberd@somehost
2015-10-27 11:46:08.831 [info] <0.7.0> Application p1_tls started on node ejabberd@somehost
2015-10-27 11:46:08.837 [info] <0.7.0> Application p1_xml started on node ejabberd@somehost
2015-10-27 11:46:08.842 [info] <0.7.0> Application p1_stringprep started on node ejabberd@somehost
2015-10-27 11:46:08.846 [info] <0.7.0> Application p1_zlib started on node ejabberd@somehost
2015-10-27 11:46:08.850 [info] <0.7.0> Application p1_cache_tab started on node ejabberd@somehost
2015-10-27 11:46:10.447 [info] <0.7.0> Application mnesia started on node ejabberd@somehost
2015-10-27 11:46:11.226 [info] <0.7.0> Application inets started on node ejabberd@somehost
2015-10-27 11:46:11.698 [info] <0.7.0> Application p1_mysql started on node ejabberd@somehost
2015-10-27 11:46:11.745 [info] <0.7.0> Application p1_iconv started on node ejabberd@somehost
2015-10-27 11:46:11.820 [info] <0.7.0> Application ejabberd started on node ejabberd@somehost

是否有任何隐藏的依赖关系需要满足(某些erlang-*包)才能恢复日志记录工作?我还可以检查什么?

答案1

好吧,我的怀疑是正确的,一些erlang软件包应该升级到测试存储库。我已升级所有已安装的erlang-*软件包,日志记录开始工作。不确定哪一个负责日志记录,但我相信升级它们全部本质上是一个好主意。这是命令:

sudo apt-get install -t testing erlang-p1-stringprep erlang-p1-yaml erlang-p1-pgsql erlang-p1-iconv erlang-p1-stun erlang-proper erlang-p1-utils erlang-p1-cache-tab erlang-p1-mysql erlang-goldrush erlang-p1-sip erlang-p1-xml erlang-jiffy erlang-p1-zlib erlang-lager erlang-xmlrpc erlang-p1-pam

相关内容