在Windows上同时监控多个日志文件(通过ssh)?

我使用poderosa(一个.NETterminal应用程序)来监视多个linux / solaris服务器上的日志。 这个应用程序目前没有得到维护,我有几个问题。

我想知道其他用户做什么来同时实时监控多个日志(如在尾部日志文件中)。 我希望能够tab / cascade几个ssh尾巴。

谢谢

您可以使用Putty连接管理器将标签添加到PuTTy。 然后SSH进入机器两次,并来回选择。

教程设置

你可以ssh到一台服务器,并从那里使用多变的尾巴在所有其他服务器上的日志。

ssh到其中一台服务器上,运行它的屏幕。 然后你可以把屏幕分成多个窗口,每个窗口都可以

ssh serverX tail -f /path/to/log/file 

这种方法的一个附带优点是,每次连接时都不必重新启动尾部,而只需重新连接到正在运行的屏幕会话即可。

从bash你可以(保存在~/.bashrc或其他):

 function create-follower () { local _NAME=$1; local _USER=$2; local _HOST=$3; local _PATH=$4; if ! [ "${_NAME}" ]\ || ! [ "${_USER}" ]\ || ! [ "${_HOST}" ]\ || ! [ "${_PATH}" ] ; then { echo "Cannot create log follower." ; echo; echo "Usage: create-follower NAME USER HOST LOG-FILE"; } >&2; return 1 ; fi ; eval "function ${_NAME}(){ ssh ${_USER}@${_HOST} tail -f \"${_PATH}\" & }" } function activate-followers () { if (( $# < 1 )) ; then { echo "You must specify at least one follower to use" ; echo ; echo "Usage:" ; echo " activate-followers follower1 [follower2 ... followerN]"; } >&2; return 1 ; fi ; for FOLLOW in "${@}" ; do ${FOLLOW} ; done ; wait; } function stop-followers () { if [ "$(jobs)" ] ; then kill -9 $(jobs | perl -pe 's/\[([0-9]+)\].*/%$1/') ; fi ; } 

然后从你的shell中,定义你想要遵循的日志:

 [dsm@localhost:~]$ create-follower test1 user1 localhost /tmp/log-1.txt [dsm@localhost:~]$ create-follower test2 user2 otherhost /tmp/log-2.txt [dsm@localhost:~]$ create-follower test2 user3 remotebox /tmp/log-3.txt 

现在,激活追随者:

 [dsm@localhost:~]$ activate-followers test1 test2 test3 

要离开函数使用CTRL+C ,并停止后台进程使用:

 [dsm@localhost:~]$ stop-followers 

注1:这假定已经为你的机器设置了公钥认证。

注2:在退出激活追随者功能后,你将不得不杀掉剩下的所有工作。 您可能想要手动执行此操作,因为所提供的功能会在所有后台作业上进行强力杀手

注3:这假设一个工作的类Unix环境,你可以通过安装cygwin得到

谁说你不能在shell脚本里做lisp 😉

首先出现在我脑海中的两个选项。

选择你最喜欢的SSH应用程序(腻子,在cygwin中的SSH等),并登录到机器。
1.每个日志的SSH(根据您的应用,在您的机器或选项卡上打开大量的窗口)
2.一次SSH并使用屏幕 。

如果您实际上需要同时查看两个日志,并且标签不可用,则可以安装名为LogResolveMerge.pl的perl脚本。 它会合并两个日志,并将输出转储到STDOUT。 但是,这将是资源密集型的,如果你的目的是为了避免日志,它可能不会太有效。

你可以结账dbitail。

我创建的Java工具,能够使用SSH读取本地和远程日志文件。 这是相当简单的使用。

一些更多的解释: https : //github.com/pschweitz/DBITail/wiki

只需在您的Java运行时(需要Java 8_40或更高版本)下载与您的操作系统相对应的本机jar版本可执行文件的版本:

https://github.com/pschweitz/DBITail/releases

你可以找到一个完整的文档(嵌入在Github的页面中)