场景: Linux机器; 我需要“监视”我的进程:需要在20秒内find消耗> 80%CPU的每个进程,并将进程信息写入日志。 有没有解决scheme,或者我会写我自己的脚本? 我已经有一个小脚本,但我想知道如果我能find更先进的东西。
我写了一个小的bash脚本来爬取URL的XML站点地图。 它使用xargs并行检索5个URL。 现在我想要一个电子邮件发送到所有的url已被抓取,所以它必须等到xargs的所有subprocess已经完成,然后发送邮件。 我用xargs之后的一个pipe道尝试过: #!/bin/bash wget –quiet –no-cache -O- http://some.url/test.xml | egrep -o "http://some.url[^<]+" | xargs -P 5 -r -n 1 wget –spider | mail… 并wait #!/bin/bash wget –quiet –no-cache -O- http://some.url/test.xml | egrep -o "http://some.url[^<]+" | xargs -P 5 -r -n 1 wget –spider wait mail … 哪两个都不行,电子邮件在脚本执行后立即发送。 我怎样才能做到这一点? 不幸的是,我的服务器上没有parallel程序(托pipe托pipe)。
我正在尝试使用nano编辑文件,每当我打开文件进行编辑时,都会给我下面的消息: File /path/to/file is being edited (by root with nano 2.5.3. PID 12345); continue? 然而,当我grep的PID或列出所有进程时,我无法find进程列表中的进程ID。 我不确定如何去做到这一点。 我在一个Ubuntu的16.04虚拟机。
我有一个过程,插入1000万条logging到MySQL数据库,并运行在(4 * 2.13GHz的处理器+ 4演出的内存)的Linux机器上。 现在需要花费大约2个小时才能完成,我不确定这个过程是否利用了所有的处理器。 使用顶部我增加了优先级(显示为-20),运行时间降低到20分钟。 我想让这个过程利用所有的处理器,并且想知道我可以用什么工具查看它? 有没有其他方法可以把更多的CPU /内存的运行过程,并提高执行速度?
文件./something.sh包含数千个复杂的作业。 这应该需要很长时间。 我只是简单地运行./something.sh而没有任何其他的命令,我必须等到它完成。 我通过SSH连接到这个Ubuntu服务器。 现在./something.sh已经运行了近2个小时,还没有完成工作。 我担心,如果这项工作被认为是空闲的,并通过给Write failed: Broken pipe服务器closures我的连接断开的Write failed: Broken pipe消息
也许我是和主pipe误解呢,但是也许我问这个问题将有助于澄清这个问题。 基本上,我在/etc/supervisord.conf文件中有一个Supervisor程序,它执行一个简单地执行PHP脚本的bash脚本。 只有在主pipe启动后,我才能成功地让这个bash脚本从主pipe运行。 然而,它不是像监督者那样在设定的时间间隔后台运行这些任务,以便我可以知道它总是在运行,并根据它运行的脚本来处理它可能需要的任何任务。 这里是我的conf文件中的程序: [program:program_name_d] command=/path/to/runme process_name=%(program_name)s numprocs=1 autostart=true
我绝不是ITIL或ITSM专家,但是我们公司正在努力采用它。 我们的团队已经遇到了一个需求,从我读过的/研究过的那一点,我觉得SPM / SCM / SLM最适合。 我希望得到一些反馈/想法/想法。 我的目标是把我的想法带给相应的stream程经理,但我不想听起来像一个白痴,这就是为什么我来这里希望能受到一点教育。 概观 我们公司为客户提供服务 我们公司有很多应用程序提供这些服务 每个应用程序由不同的团队/人员拥有 我的组织(在公司内)为应用程序提供服务(实质上我们提供应用程序的全天候监视) 我们不会为每个应用程序提供服务,而只是需要它的服务 我们需要的是一种pipe理我们提供给应用程序的服务的方法。 什么说什么服务我们提供: 供应链pipe理 ? 与我们提供服务的所有应用程序团队保持协议的内容: SLM ? 为了提供他们想要的服务(比如在停止工作时通知谁),我们需要客户(应用程序团队)提供的所有信息: SLM ? 基本上,我想知道我的思维过程是否正确。 如果SCM / SLM是我们需求的最佳过程。
我是新来的Ubuntu(来自Mac),我试图在Ubuntu的Amazon EC2实例上运行几个Java服务器和节点服务器。 我在自己的screen会话中运行每个服务器,即使在exit ssh会话后,一切都正常工作了几个小时。 几个小时后,我的网站崩溃了。 我退回到服务器,所有的屏幕会话,以及它们内部运行的服务器。 screen -ls只是说没有sockets。 Nginx是我开始运行的唯一进程。 我知道在进程的内存上可能会有一些硬性的上限,但我不知道如何改变这个问题,或者如何诊断这是否是问题。 无论如何,看起来很奇怪,我的所有进程都违背了这个限制 – 特别是节点在内存中几乎没有任何东西。 我已经通过dmesg查看,并为“杀死进程”和我的服务器名称等类似的grepped,但没有回来,我看不到任何明显的手动读取dmesg的输出。 我不知道为什么会发生这种情况,我又对Ubuntu的服务器是全新的,可能会犯一些白痴新手的错误 – 这只是一个空白的EC2微型实例(免费层)没有安装任何东西,但Nginx ,节点,git和我的服务器。 如果你是我,接下来要做什么诊断才能find问题?
我运行一个PHP脚本,出了点问题(我还没有弄清楚)。 只是为了有一个新的开始。 我重新启动Apache,但在日志中我得到这个: [Fri Dec 25 21:27:16 2009] [notice] Child 7584: Child process is running [Fri Dec 25 21:27:16 2009] [notice] Child 7584: Acquired the start mutex. [Fri Dec 25 21:27:16 2009] [notice] Child 7584: Starting 64 worker threads. [Fri Dec 25 21:27:16 2009] [notice] Child 7584: Starting thread to listen on port 9090. [Fri […]
Hyperic表示,在同一时间有一个僵尸进程。 我怎样才能弄清楚它是什么过程,并从那里走? 通常在午夜到凌晨1点之间发生,但也是在上午11点左右发生的。 让我知道,如果我可以提供更多的细节。 谢谢