GKE kubernetes delayed_job pod日志

我有一个带有以下rake jobs:work的部署对象rake jobs:work命令:

 apiVersion: extensions/v1beta1 kind: Deployment metadata: name: staging-delayed-job-deployment namespace: staging spec: template: metadata: labels: env: staging name: delayed-job spec: containers: - name: job image: gcr.io/ej-gc-dev/redacted: command: ["/bin/bash", "-l", "-c"] args: ["RAILS_ENV=production bundle exec rake jobs:work"] 

当我运行kubectl logs我什么都没得到。 如何获得rake jobs:work输出显示在kubectl logs ? 即如果直接在pod中运行,它会提供如下输出:

 [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Starting job worker [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Job UpdateHubspotPersonaJob (id=67) RUNNING [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Job UpdateHubspotPersonaJob (id=67) COMPLETED after 0.4903 [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Job Mailerjack.registration_created_user_welcome (id=68) RUNNING [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Job Mailerjack.registration_created_user_welcome (id=68) COMPLETED after 0.9115 [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Job UpdateHubspotPersonaJob (id=69) RUNNING [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Job UpdateHubspotPersonaJob (id=69) COMPLETED after 0.1752 [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Job Mailerjack.registration_created_user_welcome (id=70) RUNNING [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] Job Mailerjack.registration_created_user_welcome (id=70) COMPLETED after 0.4770 [Worker(host:staging-deployment-cc7dc559f-bswvr pid:2381)] 4 jobs processed at 1.7649 j/s, 0 failed 

当我运行kubectl logs时,我希望它出现

我需要添加一个初始化程序: config/initializers/delayed_job.rb并将worker的logger设置为stdout,如下所示:

Delayed::Worker.logger = Logger.new(STDOUT)

Interesting Posts