-
Notifications
You must be signed in to change notification settings - Fork 2k
feat(new sink): add Apache Doris sink support #23117
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
Open
bingquanzhao
wants to merge
48
commits into
vectordotdev:master
Choose a base branch
from
bingquanzhao:doris_sink
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 36 commits
Commits
Show all changes
48 commits
Select commit
Hold shift + click to select a range
ff17cb8
unsolve 307 Temporary Redirect
bingquanzhao 534f19b
fix redirect
bingquanzhao 9b3cdba
u
bingquanzhao 975c677
Complete the main code
bingquanzhao cf5ff46
fmt
bingquanzhao f603887
fix log fmt and annotation
bingquanzhao 23491c1
Merge master into doris_sink and update dependencies
bingquanzhao 027ce76
Resolve rebase conflicts with master branch
bingquanzhao 1cfdbd8
fix client build request
bingquanzhao d899ae7
optimize
bingquanzhao ab7db3a
add buffer bound config
bingquanzhao 8bf5dc6
fix
bingquanzhao bbe6326
modify integration test
bingquanzhao 0192c15
fix
bingquanzhao ee9c302
feat(doris sink): add comprehensive documentation
bingquanzhao c0e2c50
chore: auto-format CUE files after documentation generation
bingquanzhao c375db8
fix
bingquanzhao 26b9317
fmt
bingquanzhao 0c8e5b8
changelog authors
bingquanzhao 3476daa
Fix some error descriptions for doris.cue
bingquanzhao bf51c3c
modify the document sinks/doris.cue
bingquanzhao ea7aa9c
add health check auth
bingquanzhao 9eb55ef
Reversing this action should not affect the modifications made to the…
bingquanzhao f8d7a0d
Merge branch 'master' into doris_sink
thomasqueirozb eb1e5e6
make fmt
bingquanzhao 20085a8
fix unrecognized words
bingquanzhao 750b803
Merge branch 'master' into doris_sink
pront cf88b49
Modify the code according to the review comments
bingquanzhao 4149eac
use emit
bingquanzhao 8f72bbd
fmt
bingquanzhao 7137e05
u
bingquanzhao 38a0176
u
bingquanzhao df9f5e3
fix Test Suit
bingquanzhao be278bb
fix CI
bingquanzhao 9adfcd9
Merge branch 'master' into doris_sink
thomasqueirozb f83555a
Add NamedInternalEvent
thomasqueirozb 4ed4b94
Merge branch 'master' into doris_sink
thomasqueirozb 127ab55
Modify the code according to the review comments
bingquanzhao e3ee379
internal_metrics doc
bingquanzhao 1b9b08a
Use UriSerde instead of string
bingquanzhao dc2e4e7
Merge branch 'master' into doris_sink
thomasqueirozb 52cdd96
Fix integration test in ci and locally
thomasqueirozb b2977a6
Fix doris integration tests paths
thomasqueirozb 90cdc4a
Apply suggestions from code review
thomasqueirozb 62d4dd4
Further fix doris int tests but not completely
thomasqueirozb aeec78a
fix base url and integreation test
bingquanzhao d92e0df
add group commit fix
bingquanzhao ac9435e
make generate-component-docs
bingquanzhao File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| Add new Apache Doris sink for sending log data to Apache Doris databases using the Stream Load API. The sink supports configurable batching, custom HTTP headers for Doris-specific options, authentication, rate limiting, adaptive concurrency control, and includes comprehensive health checks. | ||
|
|
||
| authors: bingquanzhao |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| version: "3" | ||
| services: | ||
| doris: | ||
| image: docker.io/yagagagaga/doris-standalone:${CONFIG_VERSION} | ||
| container_name: doris | ||
| restart: unless-stopped | ||
| privileged: true | ||
| ports: | ||
| - "8030" | ||
| - "9030" | ||
| - "8040" | ||
| environment: | ||
| - SKIP_CHECK_ULIMIT=true |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| features: | ||
| - sinks-doris | ||
|
|
||
| test_filter: '::doris::integration_test::' | ||
|
|
||
| env: | ||
| DORIS_ADDRESS: http://doris:8030 | ||
|
|
||
| matrix: | ||
| version: ['2.1.7'] | ||
|
|
||
| # changes to these files/paths will invoke the integration test in CI | ||
| # expressions are evaluated using https://github.com/micromatch/picomatch | ||
| paths: | ||
| - "src/sinks/doris/**" | ||
| - "src/sinks/util/**" | ||
| - "scripts/integration/doris/**" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| use metrics::counter; | ||
| use vector_lib::{NamedInternalEvent, internal_event::InternalEvent}; | ||
|
|
||
| /// Emitted when rows are successfully loaded into Doris. | ||
| #[derive(Debug, NamedInternalEvent)] | ||
| pub struct DorisRowsLoaded { | ||
| pub loaded_rows: i64, | ||
| pub load_bytes: i64, | ||
| } | ||
|
|
||
| impl InternalEvent for DorisRowsLoaded { | ||
| fn emit(self) { | ||
| trace!( | ||
| message = "Doris rows loaded successfully.", | ||
| loaded_rows = %self.loaded_rows, | ||
| load_bytes = %self.load_bytes, | ||
| internal_log_rate_limit = true | ||
bingquanzhao marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| ); | ||
|
|
||
| // Record the number of rows loaded | ||
| counter!("doris_rows_loaded_total").increment(self.loaded_rows as u64); | ||
|
|
||
| // Record the number of bytes loaded | ||
| counter!("doris_bytes_loaded_total").increment(self.load_bytes as u64); | ||
bingquanzhao marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| } | ||
| } | ||
|
|
||
| /// Emitted when rows are filtered by Doris during loading. | ||
| #[derive(Debug, NamedInternalEvent)] | ||
| pub struct DorisRowsFiltered { | ||
| pub filtered_rows: i64, | ||
| } | ||
|
|
||
| impl InternalEvent for DorisRowsFiltered { | ||
| fn emit(self) { | ||
| warn!( | ||
| message = "Doris rows filtered during loading.", | ||
| filtered_rows = %self.filtered_rows, | ||
| internal_log_rate_limit = true | ||
bingquanzhao marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| ); | ||
|
|
||
| counter!("doris_rows_filtered_total").increment(self.filtered_rows as u64); | ||
bingquanzhao marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| } | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.