2016-04-14 83 views
0

Bir Kereviz çalışanının herhangi bir iletiyi stdout'a yazdırmasını nasıl tamamen durdurursunuz?Kereviz Çalışanı Başlatma Metni Devre Dışı Bırakma

-------------- <version> 
---- **** ----- 
--- * *** * -- <OS> 
-- * - **** --- 
- ** ---------- [config] 
- ** ---------- .> app:   <app> 
- ** ---------- .> transport: <QUEUE> 
- ** ---------- .> results:  <DB> 
- *** --- * --- .> concurrency: 10 <con> 
-- ******* ---- 
--- ***** ----- [queues] 
-------------- .> celery   <exchange> 

başlangıçta baskılı Bu iletinin durdurmak için bir yol var mı: Ben Bu HARİÇ tüm iletileri de başlangıçta baskılı alır aşağıdaki iletiyi duracaktır

celery worker --app proj --logfile=/dev/null 

denediniz mi? Bir yükseliş komut dosyası kullanıyorum.

+0

Merhaba, nedenini açıklayabilir misiniz? –

+0

Bu, "upstart/worker.log" mesajını yazdırır. Bu günlüğü izleme amacıyla temiz tutmak istiyoruz. Sadece hizmet başlatırken oluşan hataları içermelidir. –

cevap

1

Uzun bir süre önce celery multi lehine celery worker'u kapattım. worker üzerinden multi'un avantajlarından biri, kurtulmaya çalıştığınız çıktıyı üretmemesidir. Tipik bir çıkış olacaktır: Hatta çıkışın bu biraz kurtulabilirsiniz

celery multi v3.1.23 (Cipater) 
> Starting nodes... 
     > [email protected]: OK 

Eğer --quiet seçeneğini kullanarak istiyorum.

Sadece şu anda celery worker ile sessiz çalıştım ama yine de istenmeyen çıktı var.

0

Log açma dev/null günlük dosyasının yeniden başlatılmasının neden başlangıç ​​iletisi için çalışmadığını bildirme nedeninin nedeni, Kerray worker.py kaynağında this line. Başlangıç ​​mesajının görüldüğü gibi, stdout'a bir baskıdır.

Üstesinden gelmenin bir yolu, kendi worker.py sürümünüzü oluşturmak olacaktır, ancak bir günlük dosyasından yalnızca birkaç satırı kaldırmak için çok fazla acı görüyorum.

Sorununuzu çözmenin başka bir yolunu düşünemiyorum.