是否可以在Cloud Foundry中下载或搜索应用程序日志

时间:2012-12-06 08:41:30

标签: cloudfoundry

我是云代工厂的新手,我正试图找到一种方法来下载日志文件或在云代工厂中搜索它们。

我知道我可以使用vmc文件打开日志文件,但还有其他方法可以访问日志吗?

谢谢, Kinjal

1 个答案:

答案 0 :(得分:8)

我认为最简单的方法是使用VMC客户端库'cfoundry'。

以下ruby脚本连接并下载三个主要日志:

#!/usr/bin/env ruby

require 'rubygems'
require 'cfoundry'

creds = { :username => ARGV[0], :password => ARGV[1] }
app_name = ARGV[2]

files_to_dl = ['logs/staging.log', 'logs/stderr.log', 'logs/stdout.log']

c = CFoundry::Client.new "http://api.cloudfoundry.com"
c.login creds

app = c.app_by_name app_name

files_to_dl.each do |file|
  begin
    content = app.file(file)

    local_path = file.match(/\/([^\/]+)$/)[1]
    File.open(local_path, 'w') { |f| f.write(content) }

  rescue CFoundry::NotFound
    puts "404!"
  end
end

此脚本假定您使用的是最新版本的VMC(旧版本,旧版本不使用cfoundry),并且在调用脚本时也传递用户名,密码和应用程​​序名称。它将在本地编写远程文件的内容。