当前位置: 首页 > 面试题库 >

Shell函数在特定时间尾随特定字符串的日志文件

松正阳
2023-03-14
问题内容

我需要执行以下操作以确保我的应用服务器是

  1. 尾随日志文件中的特定字符串
  2. 保持阻塞,直到打印出该字符串
  3. 但是,如果在大约20分钟内未打印字符串,则退出并抛出异常消息,例如“服务器花费了20分钟以上的时间”
  4. 如果在日志文件中打印了字符串,请退出循环并继续。

有没有办法在while循环中包括超时?


问题答案:
#!/bin/bash
tail -f logfile | grep 'certain_word' | read -t 1200 dummy_var
[ $? -eq 0 ]  && echo 'ok'  || echo 'server not up'

这将读取写入日志文件的所有内容,搜索some_word,如果一切正常,则回显ok,否则在等待1200秒(20分钟)后抱怨。



 类似资料:
  • 问题内容: 我有一个包含路径的字符串 我想修剪前后的和。Python 3的最佳做法是什么? 目前我正在使用 两个问题: 这是在Python 3中修剪特定字符的最佳修剪功能吗? Python 3中是否有针对此类操作的特定路径函数,因此我不必手动设置定界符? 问题答案: 我相信这是Python方式。当有内置函数时,通常是这种情况。 库中有一些内置的路径操纵器。如果操纵器之一适合您的用例,则可能要使用它

  • 问题内容: .eg 1. 日志文件 开始 1号线 2号线 3号线 结束 从头开始读取文件时,我就能获得Line1的搜索位置。 但这不是解决问题的有效方法,因为随着文件大小的增加,获取位置的时间也会增加。我想从EOF位置获取线的位置,我认为这样会更有效。 问题答案: 注意: 我优化并改进了以下解决方案,并将其作为库发布在这里: 使用a 作为其源,它不支持从任意位置进行查找和/或读取,因此它无法从头开

  • 我有一个包含路径的字符串 并且我想修剪前导和后导的和。Python3中的最佳实践是什么? 目前我正在使用 两个问题: 这是在Python 3中修剪特定字符的最佳修剪函数吗? 在Python 3中是否有针对此类操作的特定路径函数,这样我就不必手动设置分隔符了?

  • 问题内容: 所以我有以下格式的日志消息: 现在,我想删除所有不包含特定字符串“ xyz”的日志,并保留其余所有日志。我也想索引时间戳。 grokdebug没有太大帮助。 这是我的尝试: 我是新手,所以上面的模式可能没有意义。请帮忙。 问题答案: 要删除不包含字符串的消息: 您的骗子模式没有抓住日志的日期部分。 一旦在grok模式中有一个包含日期的字段,就可以在该字段上调用日期过滤器。 因此,您的g

  • 任意逻辑 大家好,我想在日志中删除前20天的数据。表示模拟应在t=0时开始,但从第20天起开始收集日志中的数据。 有人知道这是怎么回事吗? 提前感谢您的帮助:-)

  • 问题内容: 仅在句点结束时,如何删除最后一个字符? 问题答案: (参考:PHP.net上的rtrim)