Skip to content
This repository has been archived by the owner on Nov 30, 2021. It is now read-only.

Add stream subsystem support #30

Merged
merged 1 commit into from
Jan 16, 2019
Merged

Add stream subsystem support #30

merged 1 commit into from
Jan 16, 2019

Conversation

james-callahan
Copy link
Contributor

@james-callahan james-callahan commented Nov 27, 2018

This is the first plugin to support the stream subsystem, as such some questions have arisen:

  • How should you switch between stream and http subsystem operation?
    In this case, I just implemented different :preread vs :rewrite+:access+etc phases
    They purposefully share a log phase
  • Should there be a schema field that indicates stream vs http compatibility?

The other question raised by this PR is how to actually propagate tracing contexts in TLS. https://github.com/w3c/trace-context/issues/198 remains unresolved, so this PR currently sets the wire context to nil, I intend to improve on that in a separate PR for the limited use case of kong mesh.

@hishamhm
Copy link

How should you switch between stream and http subsystem operation?

At this point, ngx.config.subsystem, which you're using, is the best thing we have. The simplest thing to do would be to expose the same functionality in the PDK, which would be about the best we can do without a larger restructuring of the plugin format.

Should there be a schema field that indicates stream vs http compatibility?

Yes, this is planned but not yet added. So for now we have to make do without it.

@subnetmarco
Copy link
Member

subnetmarco commented Jan 16, 2019

@james-callahan I would add some issues to remind ourselves to update the implementation whenever core updates the PDK/schema.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants