-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Promtail: not all pipeline stages are observed by -inspect
#4335
Comments
Hi! This issue has been automatically marked as stale because it has not had any We use a stalebot among other tools to help manage the state of issues in this project. Stalebots are also emotionless and cruel and can close issues which are still very relevant. If this issue is important to you, please add a comment to keep it open. More importantly, please add a thumbs-up to the original issue entry. We regularly sort for closed issues which have a We may also:
We are doing our best to respond, organize, and prioritize all issues but it can be a challenging task, |
Is there a workaround to make multiline work ? |
This is making it impossible to debug why my match isn't working, when the stages work fine without using a match |
@dannykopping do you know if this is still an issue? |
It is, unfortunately. |
Hi, I’m happy to have a go at this if you can give me an idea of where to start looking? |
@Kylea650 I think Danny's opening comment is a good starting point, |
Started looking at this today! Could this be as easy as implementing the missing Process method for the Processor interface and calling toStage() on each of the missing pipeline stages? Or something a bit more refined? Also any tips on generating logs for testing changes? What do others usually do? Thank you! |
Unfortunately I can't comment on the implementation, I haven't worked in that part of the promtail code enough to have an opinion. Can take a look some more later this week maybe. As far as generating logs for testing, if you mean manual testing as in running promtail and gathering logs with it you could try https://github.com/mingrammer/flog I know we've used that in the past for basic testing. |
Hey @dannykopping. Perhaps I’m missing something, but not sure I understand how inspecting the json stage ‘doesn’t’ give a none result. It doesn’t seem to hook into the StageProcessor and doesn’t implement the processor interface (that I can see anyway…). Again, maybe I’m misunderstanding the code base. |
Describe the bug
The pipeline inspection feature hooks into the
stageProcessor.Run
function to observe the state before and after a stage is processed. However, if a stage is not wrapped in astageProcessor
, the inspection will not occur.This seems to be the case for the following stages:
docker
cri
multiline
match
pack
Even though
docker
andcri
are collections of stages (pipelines), we should treat them as a single stage.Expected behavior
All pipeline stages should be inspected.
See #4331 for initial report.
The text was updated successfully, but these errors were encountered: