Cloud Foundry cf push 和 log 命令返回一个错误

Cloud Foundry cf pushcf log 命令失败。

症状

当 Cloud Foundry cf push APPLICATION_NAMEcf log APPLICATION_NAME --recent 尝试访问 Cloud Foundry Loggregator 时,返回错误。

运行 cf push APPLICATION_NAME 显示以下错误消息:

Warning: error tailing logs

运行 cf logs APPLICATION_NAME --recent 显示以下错误消息:

unknown issue when making HTTP request to Loggregator

解决问题

  1. 登录到 BOSH。 请参阅 IBM® Cloud Private Cloud Foundry 的命令行界面

  2. 确定哪些 Loggregator 实例处于失败状态。 对于安装中的每个 nats 实例,运行以下命令。 对于开发者安装,检查 nats/0,对于企业安装,检查 nats/0nats/1nats/2

    bosh -e IBMCloudPrivate -d Bluemix ssh <nats> -c "tail /var/vcap/sys/log/loggregator_trafficcontroller/loggregator_trafficcontroller.stderr.log"
    

    其中,<nats> 是要检查的实例。

    nats 实例的命令输出导致问题包含以下其中一个错误消息:

    2017/12/05 18:37:12 Could not get app information: [Get http://api.local.bluemixx
    .net/internal/log_access/f3c629e8-0bf0-4ecb-98a6-5dd42b707acb: dial tcp: lookup  
    api.local.bluemix.net on 127.0.0.1:53: no such host]
    

    或者

    2017/12/05 18:45:04 Error while reading from stream (192.168.248.11:8082): rpc ee
    rror: code = 1 desc = context canceled
    2017/12/05 18:45:04 Unable to connect to doppler (192.168.248.11:8082): rpc erroo
    r: code = 1 desc = context canceled
    2017/12/05 18:45:04 Disconnecting from stream (192.168.248.10:8082) (doppler.diss
    connect=false) (ctx.disconnect=1)
    2017/12/05 18:45:04 Disconnecting from stream (192.168.248.9:8082) (doppler.discc
    onnect=false) (ctx.disconnect=1)
    2017/12/05 18:45:04 Disconnecting from stream (192.168.248.11:8082) (doppler.diss
    connect=false) (ctx.disconnect=1)
    
  3. 重新启动 Loggregator。 运行以下命令:

    bosh -e IBMCloudPrivate -d Bluemix ssh <nats>
    sudo su -
    monit restart unbound
    monit summary
    monit restart loggregator_trafficcontroller
    exit
    

    其中,<nats> 是产生错误的 nats 实例。

  4. 对显示错误消息的每个 nats 实例重复执行上一步。