-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Avoid logging every pull query in INFO level #3672
Comments
2 tasks
This can be fixed by moving pull queries onto the |
@big-andy-coates do you expect that to happen in the next week? |
big-andy-coates
added a commit
to big-andy-coates/ksql
that referenced
this issue
Nov 12, 2019
fixes: confluentinc#3672 by providing alternative way of issuing pull queries that does NOT log Makes pull queries available on the `/query` RESTful and Websocket endpoints, in the same way that push queries are. Note: this change does not _remove_ pull query support from the `/ksql` endpoint, nor does it switch the CLI over to use the `/query` endpoint. The CLI continues to use the `/ksql` endpoint for pull queries. Push and pull queries to the `/query` rest endpoint now return the schema of the rows in the first message. This is required as the 'DESCRIBE' that CLI was previously running to get column headers doesn't work for pull queries yet. (Known issue: confluentinc#3495). This is similar to the pattern used by the websocket endpoint, which also sends the schema in the first message. In addition, I've hidden null fields and added a 'header' row to return the schema of the data. The output now looks like: ```json [{"header":{"queryId":"someId","schema":"`USERID` STRING, `PAGEID` STRING, `VIEWTIME` BIGINT, `ROWKEY` STRING"}}, {"row":{"columns":["USER_1","PAGE_1",1,"1"]}}, {"row":{"columns":["USER_2","PAGE_2",2,"2"]}}, {"finalMessage":"Limit Reached"}]" ``` BREAKING CHANGE: the response from the RESTful API for push queries has changed: it now returns a line with the schema and query id in a `header` field and null fields are not included in the payload. The CLI is backwards compatible with older versions of the server, though it won't output column headings from older versions.
6 tasks
vpapavas
pushed a commit
to vpapavas/ksql
that referenced
this issue
Nov 14, 2019
fixes: confluentinc#3672 by providing alternative way of issuing pull queries that does NOT log Makes pull queries available on the `/query` RESTful and Websocket endpoints, in the same way that push queries are. Note: this change does not _remove_ pull query support from the `/ksql` endpoint, nor does it switch the CLI over to use the `/query` endpoint. The CLI continues to use the `/ksql` endpoint for pull queries. Push and pull queries to the `/query` rest endpoint now return the schema of the rows in the first message. This is required as the 'DESCRIBE' that CLI was previously running to get column headers doesn't work for pull queries yet. (Known issue: confluentinc#3495). This is similar to the pattern used by the websocket endpoint, which also sends the schema in the first message. In addition, I've hidden null fields and added a 'header' row to return the schema of the data. The output now looks like: ```json [{"header":{"queryId":"someId","schema":"`USERID` STRING, `PAGEID` STRING, `VIEWTIME` BIGINT, `ROWKEY` STRING"}}, {"row":{"columns":["USER_1","PAGE_1",1,"1"]}}, {"row":{"columns":["USER_2","PAGE_2",2,"2"]}}, {"finalMessage":"Limit Reached"}]" ``` BREAKING CHANGE: the response from the RESTful API for push queries has changed: it now returns a line with the schema and query id in a `header` field and null fields are not included in the payload. The CLI is backwards compatible with older versions of the server, though it won't output column headings from older versions.
big-andy-coates
added a commit
that referenced
this issue
Nov 14, 2019
* fix: pull queries available on `/query` rest & ws endpoint fixes: #3672 by providing alternative way of issuing pull queries that does NOT log Makes pull queries available on the `/query` RESTful and Websocket endpoints, in the same way that push queries are. Note: this change does not _remove_ pull query support from the `/ksql` endpoint, nor does it switch the CLI over to use the `/query` endpoint. The CLI continues to use the `/ksql` endpoint for pull queries. Push and pull queries to the `/query` rest endpoint now return the schema of the rows in the first message. This is required as the 'DESCRIBE' that CLI was previously running to get column headers doesn't work for pull queries yet. (Known issue: #3495). This is similar to the pattern used by the websocket endpoint, which also sends the schema in the first message. In addition, I've hidden null fields and added a 'header' row to return the schema of the data. The output now looks like: ```json [{"header":{"queryId":"someId","schema":"`USERID` STRING, `PAGEID` STRING, `VIEWTIME` BIGINT, `ROWKEY` STRING"}}, {"row":{"columns":["USER_1","PAGE_1",1,"1"]}}, {"row":{"columns":["USER_2","PAGE_2",2,"2"]}}, {"finalMessage":"Limit Reached"}]" ``` BREAKING CHANGE: the response from the RESTful API for push queries has changed: it now returns a line with the schema and query id in a `header` field and null fields are not included in the payload. The CLI is backwards compatible with older versions of the server, though it won't output column headings from older versions.
big-andy-coates
added a commit
that referenced
this issue
Nov 14, 2019
* fix: pull queries available on `/query` rest & ws endpoint fixes: #3672 by providing alternative way of issuing pull queries that does NOT log Makes pull queries available on the `/query` RESTful and Websocket endpoints, in the same way that push queries are. Note: this change does not _remove_ pull query support from the `/ksql` endpoint, nor does it switch the CLI over to use the `/query` endpoint. The CLI continues to use the `/ksql` endpoint for pull queries. Push and pull queries to the `/query` rest endpoint now return the schema of the rows in the first message. This is required as the 'DESCRIBE' that CLI was previously running to get column headers doesn't work for pull queries yet. (Known issue: #3495). This is similar to the pattern used by the websocket endpoint, which also sends the schema in the first message. In addition, I've hidden null fields and added a 'header' row to return the schema of the data. The output now looks like: ```json [{"header":{"queryId":"someId","schema":"`USERID` STRING, `PAGEID` STRING, `VIEWTIME` BIGINT, `ROWKEY` STRING"}}, {"row":{"columns":["USER_1","PAGE_1",1,"1"]}}, {"row":{"columns":["USER_2","PAGE_2",2,"2"]}}, {"finalMessage":"Limit Reached"}]" ``` BREAKING CHANGE: the response from the RESTful API for push queries has changed: it now returns a line with the schema and query id in a `header` field and null fields are not included in the payload. The CLI is backwards compatible with older versions of the server, though it won't output column headings from older versions. (cherry picked from commit e2321f5)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The log statement in KsqlResource
may be ok for non-pull queries. but for pull queries, it will keep flooding the logs since they will be issued at much higher rate
The text was updated successfully, but these errors were encountered: