Skip to content
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

grpc: add clickhouse dest #354

Open
wants to merge 12 commits into
base: main
Choose a base branch
from
Open

Conversation

alltilla
Copy link
Member

TODO:

  • newsfile entry
  • PR description

Depends on #338

It will be needed there as well.

Signed-off-by: Attila Szakacs <[email protected]>
We are planning to introduce an opt-in grpc_dest_schema_option
nonterminal.

Signed-off-by: Attila Szakacs <[email protected]>
In order to opt-in for schema support, a derived
class must:

 * include grpc_dest_schema_option in the grammar
 * implement the string -> descriptor type mapping
 * store and init a Schema instance in the driver
 * implement the get_schema() method to return
   the stored Schema instance

The derived class can interface with the Schema
by these functions:
  * init()
  * empty()
  * format()
  * get_schema_descriptor()

Signed-off-by: Attila Szakacs <[email protected]>
This is needed, because these symbols collide with the ones
in syslog.h.

Signed-off-by: Attila Szakacs <[email protected]>
Copy link
Contributor

This Pull Request introduces config grammar changes

axoflow/bda0770260d8797db983961a3371577ec40221fc -> alltilla/grpc-clickhouse

--- a/destination
+++ b/destination

+clickhouse(
+    auth(
+        adc(<empty>)
+        alts(
+            <empty>
+            target-service-accounts(
+                <empty>
+                <string>
+            )
+        )
+        insecure(<empty>)
+        tls(
+            <empty>
+            ca-file(<string>)
+            cert-file(<string>)
+            key-file(<string>)
+        )
+    )
+    batch-bytes(<positive-integer>)
+    batch-lines(<nonnegative-integer>)
+    batch-timeout(<positive-integer>)
+    channel-args(
+        <empty>
+        <string> => <number>
+        <string> => <string>
+    )
+    compression(<yesno>)
+    database(<string>)
+    disk-buffer(
+        capacity-bytes(<number>)
+        compaction(<yesno>)
+        dir(<string>)
+        disk-buf-size(<number>)
+        flow-control-window-bytes(<nonnegative-integer>)
+        flow-control-window-size(<nonnegative-integer>)
+        front-cache-size(<nonnegative-integer>)
+        mem-buf-length(<nonnegative-integer>)
+        mem-buf-size(<nonnegative-integer>)
+        prealloc(<yesno>)
+        qout-size(<nonnegative-integer>)
+        reliable(<yesno>)
+        truncate-size-ratio(<nonnegative-float>)
+    )
+    flags(
+        <empty>
+        <string>
+    )
+    frac-digits(<nonnegative-integer>)
+    headers(
+        <empty>
+        <string> => <template-content>
+        <string> => <template-reference>
+    )
+    hook-commands(
+        setup(<string>)
+        shutdown(<string>)
+        startup(<string>)
+        teardown(<string>)
+    )
+    internal(<yesno>)
+    keep-alive(
+        <empty>
+        max-pings-without-data(<nonnegative-integer>)
+        time(<nonnegative-integer>)
+        timeout(<nonnegative-integer>)
+    )
+    local-time-zone(<string>)
+    log-fifo-size(<positive-integer>)
+    on-error(<string>)
+    password(<string>)
+    persist-name(<string>)
+    protobuf-schema(<path> => <template-content-list>)
+    retries(<positive-integer>)
+    schema(
+        <empty>
+        <string> <string> => <template-content>
+        <string> => <template-content>
+    )
+    send-time-zone(<string>)
+    table(<string>)
+    template-escape(<yesno>)
+    throttle(<nonnegative-integer>)
+    time-reopen(<positive-integer>)
+    time-zone(<string>)
+    ts-format(<string>)
+    url(<string>)
+    user(<string>)
+    worker-partition-key(<template-content>)
+    workers(<positive-integer>)
+)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant