2016-03-23 21 views

cevap

3

ben sadece kabuğunda yapacağını hiçbir ek gereksinimleri, örneğin varsa:

find $JENKINS_HOME/jobs/haystack -name log -exec grep -l needle {} \; \ 
    | sed 's|.*/\(.*\)/log|\1|' 
+1

, ben çok korkuyorum olurdu. :) –

+0

Bir Jenkins mesaji yaratabilirsiniz, daha sonra bu konuda bir endişe duyuyorsaniz, bunu bir kabuk basamağinda çalistirebilirsiniz. Ve kendi cevabınıza bakarak, konsolda Groovy komut dosyalarını çalıştırmanın kabuk erişimini vermekten daha güvenli olduğunu düşünmüyorum :) – jil

1

(hatalar, uyarılar günlüğüne ilgi hatları vurgulayarak Log Parser Plugin

yoktur, log ve bölümlerinde hatalar, uyarılar ve bilgi hatlarının sayısının bir özetini gösteren bölüme günlüğü bölünmesi bilgileri)

.

kolay inşa sayfa

üzerinde hata ve uyarıların bir özetini gösteren günlüğüne

ilgi bir çizgi bulmak için yapım tam günlüğüne bağlamında içine hataları ve uyarıları bağlama özeti

Eski günlüklerse, o zaman Linux'da olduğunuzu varsayarak Jil'in cevabı vardır.

+0

Linux almanıza gerek yok. Sadece _bash_, _find_, _grep_ ve _sed_. Windows'a kolayca yüklenebilir (ör. Cygwin veya mingw'den) ve şansınız onlara sahip olduğunuzdan, yani Git'i kullanıyorsanız. – jil

5

Sık sık bu gibi görevler için Jenkins Script Console kullanın. Groovy plugin Komut Dosyası Konsolu'nu sağlar, ancak periyodik bakım için Komut Dosyası Konsolu'nu kullanacaksanız, çalıştırdığınız komut dosyalarını yönetmenizi sağlayan Scriptler plugin da istersiniz. Değerli çözümler için

JOB_NAME = "My Job" 
BUILD_STRING = "Hello, world" 

def job = Jenkins.instance.items.find { it.name == JOB_NAME } 
for (build in job.builds) { 
    def log = build.log 
    if (log.contains(BUILD_STRING)) { 
    println "${job.name}: ${build.id}" 
    } 
} 
+0

FWIW, tüm işler arasında arama yapmak için, "def job = Jenkins.instance.items.find {true}" –

+0

Bu, CI kurulumumuzda çalışmaz. Şu anda çalışan işlerin konsol kayıtları için mi, hatta tamamlanmış işler için mi arama yapılacağını doğrulayabilir misiniz? Hem çalışan hem de tamamlanmış (başarısız/dengesiz/başarılı) tüm işleri nasıl arayabilirim? – askb

+0

@dave bacher I get: groovy.lang.MissingPropertyException: Böyle bir özellik: sınıf için oluşturur: java.lang.Boolean Herhangi bir fikir? – DenCowboy

0

Teşekkür herkesi: - itibaren

Jenkins Yönet>Senaryo Konsol, sen işi en dolaşır eşleştirme dizesi arayan yapýlar gelenekselleşmiş bir senaryo yazabilir. Biraz fazla araştırma yaptıktan sonra bunu yapmak için Jenkins'de bir eklenti olduğunu gördüm.

https://wiki.jenkins-ci.org/display/JENKINS/Lucene-Search

Bu

konsol çıkış sonuçlarını kaydetmek ve kullanıcılar arama kutusuna arama yapabilirsiniz. Bu ince cevabı iken benim geliştiricilerinden biri erişim için bizim Jenkins sunucu sordum onlar iş dizinleri karşı kabuk komutlarını çalıştırabilir böylece

İlgili konular