记录api中的tailLines和SinceTime都不能同时工作

时间:2017-09-17 12:45:45

标签: node.js kubernetes

我正在使用容器引擎,我的pod在那里托管。

我正在尝试使用log api获取日志:

http://localhost:8000/api/v1/namespaces/app-test/pods/designer-0/log tailLines = 100&安培;的 sinceTime = 2017-09-17T10:47:58Z

如果我单独使用两个查询参数,它会工作并显示正确的结果,但如果我同时使用它只返回前100个日志,则 sinceTime 参数将被忽略。< / p>

我的情况是,我需要一个特定时间的日志,如100行,100行......就像这样。

我不确定,这是一个错误,还是没有实现。

3 个答案:

答案 0 :(得分:0)

我是从api参考手册

中找到的

https://kubernetes.io/docs/api-reference/v1.6/

tailLines -     If set, the number of lines from the end of the logs to 
show. If not specified, logs are shown from the creation of the 
container or sinceSeconds or sinceTime

所以,这意味着如果你指定tailLines,它会从最后开始。除了limitBytes之外,我没有看到明确提到的任何选项。但是你必须要玩它,因为它不能保证行数。

答案 1 :(得分:0)

tailLines = X告诉服务器从末尾开始那么多行

sinceTime告诉服务器从指定时间开始

选项是互斥的

答案 2 :(得分:0)

全部谢谢,

我后来认识到,它并没有忽略sinceTime,因为TailLines的预期功能是从最后一行返回。

所以,如果我昨天提到了SinceTime = 10 PM,那么它将从那个时间返回记录。如果还提到tailLines,那么它将返回该块的最近日志。

所以,它按预期工作。我需要使用 LimitBytes 来获取块中的日志,从那时起,而不是完整日志。