Uzak bir linux sunucusundaki günlükleri görüntüleme


21

Uzak (linux) sunucuda 'tail -f' yapmak için hoş araçlar var mı? Günlükleri ssh kullanmak zorunda kalmadan çeşitli sunucularda görüntülemek için "taillog server_host / var / log / syslog" gibi bir şey yapabilmek güzel olurdu.

Yan yana birden fazla günlük gösteren bir uygulamaya ne dersiniz?

Yanıtlar:


16

Günlük dosyaları syslogtesis üzerinden istemci sunucuda üretiliyorsa, en iyi yol, istemcilerin syslog arka planını bu günlükleri ayrı bir ana bilgisayara iletecek şekilde ayarlamaktır. Örneğin syslog.private, uzak sunucuya işaret eden dahili bir isme sahipsem, kayıt girişlerini almak istiyorum. /etc/syslog.confİstemci sunucusuna aşağıdaki satırı ekleyebilirim .

*.*          @syslog.private

ve istemcideki syslog arka planını yeniden başlatın

service syslog reload

Bu, istemciler syslog'undan geçen her girişin kablo üzerinden gönderilmesine neden olacak syslog.privateve bu makine doğru yapılandırılmışsa, girişler burada da kullanılabilir olacak. RedHat sistemlerinde bu /etc/sysconfig/syslogdosya tarafından kontrol edilir . -rSeçeneğin mevcut olduğundan emin olun

% grep "SYSLOGD" /etc/sysconfig/syslog 
SYSLOGD_OPTIONS="-m 0 -r"

ve sonra alıcı sunucudaki syslog arka plan programını yeniden başlatın.

Dışlamalar ekleyerek uzak sunucuya ne iletildiğini de kontrol edebilirsiniz, aşağıdaki örneğe bakın

*.*;mail.none   @syslog.private

Bu syslog.privateda mailtesise gönderilen herhangi bir şey haricinde her şeyi ilettiğini söylüyor .

Bu çözüm sizin için çalışıyorsa, gibi alternatif syslog uygulamaların birini düşünebilir rsyslog veya syslog-ng ekstra günlüğü ve depolama seçenekleri sunar.


1
+1. Merkezileştirilmiş log depoları esastır imo. Öyle çok Sonrasında günlüklerinin temiz bir set olması güzel. Bir saldırgan tarafından zehirlenebileceği için temizliği garanti edilmez. Ancak saldırgan hiçbir şeyi kaldıramaz.
Komutan Keen

Ardından, merkezi günlük sunucunuzda çoklu görev veya yayılma kullanmak, tüm ağınız hakkında bir fikir edinmenin harika bir yoludur
Dave Cheney

9

Anahtar tabanlı ssh kimlik doğrulaması ve sudo kurarsanız, uzak ana bilgisayarlarda uzak ana bilgisayarlarda parola istemeden günlük dosyalarına karşı kuyruk çalıştırmak için izin verir. Aşağıda istediğinizi yapan bir taillog betiği oluşturmak oldukça kolay olurdu. Bu gerçekten ssh'den kaçınmıyor, ancak size birkaç adım kazandırıyor.

#!/bin/bash
ssh $1 sudo tail -f $2

Veya, tüm günlük iletilerini merkezi bir sisteme iletmek için syslog ayarlayabilir ve syslog sunucusundaki tail komutunu çalıştırabilirsiniz. Merkezi sistemdeki günlük dosyalarını izleyin.


5

Gelişmiş günlük görüntüleme için multitail'i tavsiye ederim . Kendisi steroidlerin kuyruğu olarak tanımlanır.


Sadece bu öneri için 15 saat önce bir oy kullandım. İlanımı kaldıracağım ...
Avery Payne

Hmm, evet, multitail'in soruya kesin bir cevap olduğunu sanmıyorum, ancak cevaba dahil edilecek kadar değerli olduğunu düşünüyorum. Bunun için bir oy çok zor.
gacrux

haksız yere katılıyorum .... çoklu log bu iki kısım sorunun yarısını yanıtlıyor - 'yan yana' kısmı. (vimdiff ayrıca iyi bir iş çıkarır veya en azından vim -O) sadece uzak bölüme hitap etmediğinden sorun olabilir.
ericslaw

3

Bu açık bir şekilde sorunuzu cevaplamıyor, ancak izlemek için birkaç günlükten daha fazlası varsa ve ücretsiz sürüm sınırından daha azsa, Splunk'u ücretsiz bir arayüze sahip olmak ve tüm günlük verilerinize faydalı olmak için ücretsiz deneyebilirsiniz .

tail -f birden fazla kütüğü destekliyor, ancak yan yana değil, sadece aşağı doğru destekliyor.


Splunk, bir dosyadaki uzak kuyruk-f yapmak için kullanabileceğiniz bir kuyruk özelliğine sahiptir. Yine de yan yana olduğuna inanmıyorum.
thepocketwade

2

Multitail yerel makinede peşinde olduğunuz şeyi yapacak. Etrafında çalışmanın birkaç yolu olmasına rağmen (NFS bağları, SMB bağları, vb.) Bir ağ üzerinden çalışıp çalışmayacağını özellikle belirtmez (SFS bağları, SMB bağları, vb.) başka bir makinenin syslog'undan aktif veri almak için bu özelliği hiç kullanmadığım halde durumun böyle olup olmadığını bilmiyorum.


2

OtrosLogViewer kullanıyorum (apache commons lisansı). Ssh / sftp ve samba / CIFS kullanarak uzak sunuculardan kayıt kütüğünü destekler. Günlük dosyalarını tek pencerede sıralayabilirsiniz. İşte bir ekran görüntüsü: OtrosLogViewer ekran görüntüsü


Linux syslog dosyasına bir şablonunuz var mı?
Edgard Leal

Örnekler üzerinde kendi kalıp tabanınızı oluşturmanız gerekir: code.google.com/p/otroslogviewer/wiki/Log4jPatternLayout
KrzyH

SFTP'ye bağlanmak için aşağıdaki formatı kullanın (1.4.5 sürümünde UI tarayıcısı yoktur):sftp://hostname/path/to/directory
Donatello,

1

Tam olarak bu amaç için vsConsole yazdım - günlük dosyalarına kolay erişim (sshing ve dosya izinleri her zaman bir problemdir) - ve ardından uygulama izleme ve sürüm takibi eklendi. Bunun hakkında ne düşündüğünü bilmek istiyorum. http://vs-console.appspot.com/

Bu, kolay, düşük bir öğrenme eğrisi, genel gelişim sorunlarını çözen tek tıklamayla bir çözüm anlamına geliyordu.


0

Phplogcon gibi bir şey kullanabilirsiniz. Mysql ile rsyslog kullanıyorum ve diğer sunucularımdaki bütün kayıtları ona gönderiyorum. Phplogcon daha sonra bunları bir web uygulaması kullanarak görüntüler.

En iyi görünen arayüz değil, ancak yöneticilerin sunucuları gereksiz uzak girişlere maruz bırakmadan günlüklere erişmeleri için iyi bir yol.


0

Zaten bahsetti, ancak tekrar söylemeye değer. Splunk!

Geçmişte güzel bir gui ile büyük merkezi syslog kurulumları inşa etmekten zevk duydum. Acı dolu bir dünya. Splunk, özellikle merkezi bir yönetim sağlamanız için bir işletme lisansıyla, sizi bir beze yapar. Günlükleriniz günde 500 milyonun altındaysa, ücretsizdir. Olmazsa, çok pahalı bir hale gelebilir, ancak sadece biraz günlük tutmaya değil, buna değerdir - çok daha fazlasını yapabilirsiniz. Genelde açık kaynaklı uygulamaları savunurdum, ancak Splunk karşılaştığım her şeyi atıyor.


0

Bunu dene:

ssh servername tail -f /var/log/messages

Günlük dosyanız korunuyorsa:

ssh -f servername sudo tail -f /var/log/messages

("ssh -f" kullanmak zorunda değilsiniz - sadece şifreniz TTY'ye yankılanmadı)

İsterseniz SSH ile aynı komutu kullanabilirsiniz .


0

Günlüklerinizi merkezileştirmek, uyarıları ve raporları görüntülemek ve oluşturmak için Octopussy (projem) de kullanabilirsiniz .


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.