Dan Bernstein'ın multilog için dosya tanımlayıcıları bir çıkışı sağlarken, belki de en bunun ya - görünüşte yapabilirsiniz ! İşlemci gibi senin kadar fark telafi etmek - 20 Milyon / 1G boyut özellikleri bazı finagling alabilir olsa göründüğü gibi 16M onun günlük başına dış sınır. Aşağıdaki, çoğunlukta, yukarıdaki bağlantıdan bir kopya + yapıştırma seçimidir, ancak bağlantı aynı zamanda satır başına zaman damgası, yalnızca en son satır eşleştirme desenini içeren [ve] başka bir dosya [lar] bulundurma ve daha fazlası gibi diğer seçenekleri de detaylandırır. .
Arayüz
multilog script
... script herhangi bir sayıda argümandan oluşur. Her bağımsız değişken bir eylem belirtir. İşlemler, her girdi satırı için gerçekleştirilir.
Hatları seçme
Her satır başlangıçta seçilir. Eylem...
-pattern
... desen çizgiyle eşleşiyorsa çizginin seçimini kaldırır. Eylem...
+pattern
desen çizgiyle eşleşiyorsa çizgiyi seçer .
... desen bir dizi yıldızdır ve yıldız değildir. Tüm yıldızlar ve yıldız olmayanlar tarafından aynı sırada dizelerin birleştirilmesi ile eşleşir. Yıldız olmayan bir kişi kendini gösterir. Desenin sonundan önceki yıldız, desendeki bir sonraki karakteri içermeyen herhangi bir dizeyle eşleşir. Desenin sonundaki bir yıldız herhangi bir dizeyle eşleşir.
Otomatik döndürülmüş kütükler
Eğer dir veya bir nokta ile başlar daha sonra eylemi çizgi ...
dir
... seçilen her satırı dir adlı bir günlüğe ekler . Eğer dir yoksa, multilog
bunu oluşturur.
Günlük biçimi aşağıdaki gibidir:
dir , işlemlerini izlemek için birkaç eski günlük dosyası, current adlı bir günlük dosyası ve diğer dosyaları içeren bir dizindir multilog
.
Her eski günlük dosyasının @ ile başlayan , dosyanın ne zaman bittiğini gösteren ve aşağıdaki kodlardan biriyle biten kesin bir zaman damgasıyla devam eden bir adı vardır :
- .s : Bu dosya tamamen işlenir ve güvenli bir şekilde diske yazılır.
- .u : Bu dosya bir kesinti anında oluşturuluyordu. Kesilmiş olabilir. İşlenmedi.
Eylem...
ssize
... devam eden için maksimum dosya boyutunu ayarlar dir eylemleri. multilog
karar verecek akımı ise yeterince büyük olduğunu akımı vardır boyutu bayt. ( multilog
ayrıca, maksimum dosya boyutunun 2000 bayt içinde yeni bir satır görürse, akımın yeterince büyük olduğuna karar verir; günlük dosyalarını satır sınırlarında bitirmeye çalışır.) boyutu 4096 ve 16777215 arasında olmalıdır. Varsayılan maksimum dosya boyutu 99999'dur.
0.75 ve üzeri sürümlerde: Bir ALRM sinyali multilog
alırsa , akım boş değilse hemen akımın yeterince büyük olduğuna karar verir .
(Not: zsh
schedule
Yerleşikliğin ALRM
gerekirse belirli aralıklarla göndermeye kolayca ikna edilebileceğinden şüpheleniyorum .)
Eylem...
nnum
... sonraki dir eylemleri için günlük dosyalarının sayısını ayarlar . Adlandırma sonra akımı ise, multilog
gördüğü num veya daha fazla eski günlük dosyalarını, en küçük zaman damgası ile eski günlük dosyasını kaldırır. sayı en az 2 olmalıdır. Varsayılan günlük dosyası sayısı 10'dur.
Eylem...
!processor
... daha sonraki dir eylemleri için bir işlemci ayarlar . akımı işlemci üzerinden multilog
besler ve çıkışı akım yerine eski bir günlük dosyası olarak kaydeder . işlemcinin tanımlayıcı 5'e yazdığı tüm çıktıları kaydeder ve sonraki günlük dosyasında işlemciyi çalıştırdığında bu çıktıyı tanımlayıcı 4'te okunabilir hale getirir. Güvenilirlik için, işlemci çıktısını oluşturmada herhangi bir sorun yaşıyorsa sıfırdan çıkmalıdır; sonra tekrar çalıştırır. Çalışan işlemcinin herhangi bir program besleme girişini engelleyebileceğini unutmayın .multilog
multilog
multilog