USE_SSH=true yarn deploy
31 | ```
32 |
33 | If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
34 |
--------------------------------------------------------------------------------
/docs/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
3 | };
4 |
--------------------------------------------------------------------------------
/docs/blog/2023-05-23-intro-dagger-docs.md:
--------------------------------------------------------------------------------
1 | ---
2 | slug: introducing-dagger
3 | title: Introducing Dagger Documentation page
4 | authors:
5 | name: Hari krishna
6 | tags: [dagger]
7 | ---
8 |
9 | Our docs website is live.
10 |
--------------------------------------------------------------------------------
/docs/blog/authors.yaml:
--------------------------------------------------------------------------------
1 | harikrishna:
2 | name: Hari krishna
3 | title: Maintainer
4 | url: https://github.com/harikrishnakanchi
5 | image_url: https://github.com/harikrishnakanchi.png
6 |
--------------------------------------------------------------------------------
/docs/docs/concepts/overview.md:
--------------------------------------------------------------------------------
1 | # Overview
2 |
3 | The following section sheds light on some basic concepts and several components of Dagger.
4 |
5 | ### [Architecture](../concepts/architecture.md)
6 |
7 | Describes some of the internal logical and infrastructural blocks of Dagger and how they are interconnected.
8 |
9 | ### [Basics](../concepts/basics.md)
10 |
11 | A brief introduction to stream processing with some basic terminologies and keywords in Dagger.
12 |
13 | ### [Lifecycle](../concepts/lifecycle.md)
14 |
15 | Explains how unbounded data goes through internal processing pipelines before materializing the results.
16 |
--------------------------------------------------------------------------------
/docs/docs/examples/overview.md:
--------------------------------------------------------------------------------
1 | # Overview
2 |
3 | The following example tutorials will help you to quickly try out some of Dagger's most useful features with real-world usecases -
4 |
5 | - [Data Aggregation using a Tumble Window](../examples/aggregation_tumble_window.md)
6 | - [Removing duplicate records using Transformers](../examples/deduplication_transformer.md)
7 | - [Distance computation using Java UDF](../examples/distance_java_udf.md)
8 | - [Stream enrichment using ElasticSearch source](../examples/elasticsearch_enrichment.md)
9 | - [Joining two Kafka topics using Inner join](../examples/kafka_inner_join.md)
10 |
--------------------------------------------------------------------------------
/docs/docs/reference/overview.md:
--------------------------------------------------------------------------------
1 | # Overview
2 |
3 | The following section describes the references of properties on Dagger deployment.
4 |
5 | ### [Configurations](../reference/configuration.md)
6 |
7 | Describes all the configurations needed for deploying Dagger.
8 |
9 | ### [Metrics](../reference/metrics.md)
10 |
11 | Describes all the metrics captured by Dagger deployment.
12 |
13 | ### [Transformers](../reference/transformers.md)
14 |
15 | Describes all the custom transformers available and the configuration needed to be used in Dagger.
16 |
17 | ### [Udfs](../reference/udfs.md)
18 |
19 | Describes all the custom udfs available and the configuration needed to be used on Dagger.
20 |
--------------------------------------------------------------------------------
/docs/docs/roadmap.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 2
3 | ---
4 |
5 | # Roadmap
6 |
7 | In the following section you can learn about what features we're working on, what stage they're in, and when we expect to bring them to you. Have any questions or comments about items on the roadmap? Join the [discussions](https://github.com/raystack/dagger/discussions) on Dagger Github forum.
8 |
9 | We’re planning to iterate on the format of the roadmap itself, and we see potential to engage more in discussions about the future of Dagger features. If you have feedback about this roadmap section itself, such as how the issues are presented, let us know through [discussions](https://github.com/raystack/dagger/discussions).
10 |
11 | ### Dagger 0.2
12 |
13 | - Flink upgrade from 1.9 to 1.13
14 |
15 | ### Dagger 0.3
16 |
17 | - Support for Python in custom functions
18 | - Parquet file processing
19 |
20 | ### Dagger 0.4
21 |
22 | - Support for JSON and Avro
23 | - CDC input source
24 | - Support for dead letter queue
25 |
--------------------------------------------------------------------------------
/docs/docs/usecase/overview.md:
--------------------------------------------------------------------------------
1 | # Overview
2 |
3 | This section talks a bit about some of the use cases that can be solved using Dagger with some examples.
4 |
5 | ### [Stream Enrichment](stream_enrichment.md)
6 |
7 | Enrichment of streaming Data with external more static Data sources is seamless in Dagger and is just writing a few configuration. We will explain this in more details with some example.
8 |
9 | ### [Feature Ingestion](feature_ingestion.md)
10 |
11 | Realtime feature generation is really important for online machine learning pipelines. Dagger can be a great tool for feature ingestion.
12 |
13 | ### [API Monitoring](api_monitoring.md)
14 |
15 | Behind every great API is a reliable uptime monitoring system. But knowing/monitoring health of API metrics in real time is tricky. With Dagger this can be easily solved by writing some simple queries.
16 |
--------------------------------------------------------------------------------
/docs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "dagger",
3 | "version": "0.0.0",
4 | "private": true,
5 | "scripts": {
6 | "docusaurus": "docusaurus",
7 | "start": "docusaurus start",
8 | "build": "docusaurus build",
9 | "swizzle": "docusaurus swizzle",
10 | "deploy": "docusaurus deploy",
11 | "clear": "docusaurus clear",
12 | "serve": "docusaurus serve",
13 | "write-translations": "docusaurus write-translations",
14 | "write-heading-ids": "docusaurus write-heading-ids"
15 | },
16 | "dependencies": {
17 | "@docusaurus/core": "2.0.0-beta.6",
18 | "@docusaurus/plugin-google-gtag": "^2.0.0-beta.6",
19 | "@docusaurus/preset-classic": "2.0.0-beta.6",
20 | "@mdx-js/react": "^1.6.21",
21 | "@svgr/webpack": "^5.5.0",
22 | "classnames": "^2.3.1",
23 | "clsx": "^1.1.1",
24 | "file-loader": "^6.2.0",
25 | "prism-react-renderer": "^1.2.1",
26 | "react": "^17.0.1",
27 | "react-dom": "^17.0.1",
28 | "url-loader": "^4.1.1"
29 | },
30 | "browserslist": {
31 | "production": [
32 | ">0.5%",
33 | "not dead",
34 | "not op_mini all"
35 | ],
36 | "development": [
37 | "last 1 chrome version",
38 | "last 1 firefox version",
39 | "last 1 safari version"
40 | ]
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/docs/src/core/Container.js:
--------------------------------------------------------------------------------
1 | import classNames from 'classnames';
2 | import * as React from 'react';
3 |
4 | const Container = props => {
5 | const containerClasses = classNames(props.className, {
6 | darkBackground: props.background === 'dark',
7 | highlightBackground: props.background === 'highlight',
8 | lightBackground: props.background === 'light',
9 | paddingAll: props.padding.indexOf('all') >= 0,
10 | paddingBottom: props.padding.indexOf('bottom') >= 0,
11 | paddingLeft: props.padding.indexOf('left') >= 0,
12 | paddingRight: props.padding.indexOf('right') >= 0,
13 | paddingTop: props.padding.indexOf('top') >= 0,
14 | });
15 | let wrappedChildren;
16 |
17 | if (props.wrapper) {
18 | wrappedChildren = {props.children}
;
19 | } else {
20 | wrappedChildren = props.children;
21 | }
22 | return (
23 |
24 | {wrappedChildren}
25 |
26 | );
27 | };
28 |
29 | Container.defaultProps = {
30 | background: null,
31 | padding: [],
32 | wrapper: true,
33 | };
34 |
35 | export default Container;
36 |
--------------------------------------------------------------------------------
/docs/src/css/theme.css:
--------------------------------------------------------------------------------
1 | /**
2 | * Any CSS included here will be global. The classic template
3 | * bundles Infima by default. Infima is a CSS framework designed to
4 | * work well for content-centric websites.
5 | */
6 |
7 | /* You can override the default Infima variables here. */
8 | :root {
9 | --ifm-color-primary-lightest: #FF923C;
10 | --ifm-color-primary-lighter: #FF7E17;
11 | --ifm-color-primary-light: #FF770B;
12 | --ifm-color-primary: #f26b00;
13 | --ifm-color-primary-dark: #DA6000;
14 | --ifm-color-primary-darker: #CE5B00;
15 | --ifm-color-primary-darkest: #A94B00;
16 | --ifm-code-font-size: 95%;
17 | }
18 |
19 | .docusaurus-highlight-code-line {
20 | background-color: rgba(0, 0, 0, 0.1);
21 | display: block;
22 | margin: 0 calc(-1 * var(--ifm-pre-padding));
23 | padding: 0 var(--ifm-pre-padding);
24 | }
25 |
26 | html[data-theme='dark'] .docusaurus-highlight-code-line {
27 | background-color: rgba(0, 0, 0, 0.3);
28 | }
29 |
30 | html[data-theme="light"] {
31 | --main-bg-color: var(--ifm-color-primary);
32 | --light-bg-color: transparent;
33 | --dark-bg-color: #F8F6F0;
34 | }
35 |
36 | html[data-theme="dark"] {
37 | --main-bg-color: var(--ifm-color-primary);
38 | --light-bg-color: transparent;
39 | --dark-bg-color:#131313;
40 | }
41 |
42 |
--------------------------------------------------------------------------------
/docs/static/.nojekyll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/.nojekyll
--------------------------------------------------------------------------------
/docs/static/img/api-monitoring.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/api-monitoring.png
--------------------------------------------------------------------------------
/docs/static/img/api-status.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/api-status.png
--------------------------------------------------------------------------------
/docs/static/img/dart-contains.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/dart-contains.png
--------------------------------------------------------------------------------
/docs/static/img/dart-get.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/dart-get.png
--------------------------------------------------------------------------------
/docs/static/img/enrichment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/enrichment.png
--------------------------------------------------------------------------------
/docs/static/img/external-http-post-processor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/external-http-post-processor.png
--------------------------------------------------------------------------------
/docs/static/img/external-internal-post-processor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/external-internal-post-processor.png
--------------------------------------------------------------------------------
/docs/static/img/external-internal-transformer-post-processor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/external-internal-transformer-post-processor.png
--------------------------------------------------------------------------------
/docs/static/img/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/favicon.ico
--------------------------------------------------------------------------------
/docs/static/img/lifecycle/dagger_lifecycle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/lifecycle/dagger_lifecycle.png
--------------------------------------------------------------------------------
/docs/static/img/longbow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/longbow.png
--------------------------------------------------------------------------------
/docs/static/img/longbowplus-reader.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/longbowplus-reader.png
--------------------------------------------------------------------------------
/docs/static/img/longbowplus-writer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/longbowplus-writer.png
--------------------------------------------------------------------------------
/docs/static/img/overview/dagger_overview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/overview/dagger_overview.png
--------------------------------------------------------------------------------
/docs/static/img/pre-processor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/pre-processor.png
--------------------------------------------------------------------------------
/docs/static/img/sliding.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/sliding.png
--------------------------------------------------------------------------------
/docs/static/img/system_design/dagger_system_design.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/system_design/dagger_system_design.png
--------------------------------------------------------------------------------
/docs/static/img/tumble.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/img/tumble.png
--------------------------------------------------------------------------------
/docs/static/users/gojek.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/users/gojek.png
--------------------------------------------------------------------------------
/docs/static/users/goto.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/users/goto.png
--------------------------------------------------------------------------------
/docs/static/users/jago.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/users/jago.png
--------------------------------------------------------------------------------
/docs/static/users/mapan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/users/mapan.png
--------------------------------------------------------------------------------
/docs/static/users/midtrans.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/users/midtrans.png
--------------------------------------------------------------------------------
/docs/static/users/moka.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/users/moka.png
--------------------------------------------------------------------------------
/docs/static/users/paylater.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/docs/static/users/paylater.png
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.daemon=true
2 | org.gradle.caching=true
3 | export GRADLE_OPTS=-Xmx2560m
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raystack/dagger/9aac71e9c2d1b4f0cb1d5dc5a561a312edea37cf/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Mar 31 10:29:20 IST 2021
2 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-all.zip
3 | distributionBase=GRADLE_USER_HOME
4 | distributionPath=wrapper/dists
5 | zipStorePath=wrapper/dists
6 | zipStoreBase=GRADLE_USER_HOME
7 |
--------------------------------------------------------------------------------
/quickstart/docker-compose/resources/kafkafeeder.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | timestamp_now=$(date +%s)
3 | random_3char_suffix=$(pwgen 3 1)
4 | random_enum_index=$(($RANDOM %3))
5 | declare -a myArray=("FLIGHT" "BUS" "TRAIN")
6 | cat sample_message.txt | \
7 | sed "s/replace_timestamp_here/$timestamp_now/g; s/replace_service_type_here/${myArray[$random_enum_index]}/g; s/replace_customer_suffix_here/$random_3char_suffix/g" | \
8 | protoc --proto_path=./ --encode=org.raystack.dagger.consumer.TestBookingLogMessage ./TestLogMessage.proto > message.bin
9 |
--------------------------------------------------------------------------------
/quickstart/docker-compose/resources/sample_message.txt:
--------------------------------------------------------------------------------
1 | service_type: replace_service_type_here
2 | order_number: "ynnhjv45"
3 | event_timestamp {
4 | seconds: replace_timestamp_here
5 | }
6 | customer_id: "customer-replace_customer_suffix_here"
7 | driver_pickup_location {
8 | latitude: 19.075983
9 | longitude: 72.877655
10 | }
11 | driver_dropoff_location {
12 | latitude: 19.237188
13 | longitude: 72.844139
14 | }
--------------------------------------------------------------------------------
/quickstart/examples/aggregation/tumble_window/resources/kafkafeeder.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | timestamp_now=$(date +%s)
3 | random_3char_suffix=$(pwgen 3 1)
4 | random_enum_index=$(($RANDOM %3))
5 | declare -a myArray=("FLIGHT" "BUS" "TRAIN")
6 | cat sample_message.txt | \
7 | sed "s/replace_timestamp_here/$timestamp_now/g; s/replace_service_type_here/${myArray[$random_enum_index]}/g; s/replace_customer_suffix_here/$random_3char_suffix/g" | \
8 | protoc --proto_path=./ --encode=org.raystack.dagger.consumer.TestBookingLogMessage ./TestLogMessage.proto > message.bin
9 |
--------------------------------------------------------------------------------
/quickstart/examples/aggregation/tumble_window/resources/sample_message.txt:
--------------------------------------------------------------------------------
1 | service_type: replace_service_type_here
2 | order_number: "ynnhjv45"
3 | event_timestamp {
4 | seconds: replace_timestamp_here
5 | }
6 | customer_id: "customer-replace_customer_suffix_here"
7 | driver_pickup_location {
8 | latitude: 19.075983
9 | longitude: 72.877655
10 | }
11 | driver_dropoff_location {
12 | latitude: 19.237188
13 | longitude: 72.844139
14 | }
--------------------------------------------------------------------------------
/quickstart/examples/enrichment/elasticsearch_enrichment/resources/kafkafeeder.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | timestamp_now=$(date +%s)
3 | random_enum_index=$(($RANDOM %3))
4 | random_customer_id=$(($RANDOM %12))
5 | declare -a myArray=("FLIGHT" "BUS" "TRAIN")
6 | cat sample_message.txt | \
7 | sed "s/replace_timestamp_here/$timestamp_now/g; s/replace_service_type_here/${myArray[$random_enum_index]}/g; s/replace_customer_suffix_here/$random_customer_id/g" | \
8 | protoc --proto_path=org/raystack/dagger/consumer/ --encode=org.raystack.dagger.consumer.TestBookingLogMessage org/raystack/dagger/consumer/TestLogMessage.proto > message.bin
9 |
--------------------------------------------------------------------------------
/quickstart/examples/enrichment/elasticsearch_enrichment/resources/sample_message.txt:
--------------------------------------------------------------------------------
1 | service_type: replace_service_type_here
2 | order_number: "ynnhjv45"
3 | event_timestamp {
4 | seconds: replace_timestamp_here
5 | }
6 | customer_id: "replace_customer_suffix_here"
7 | driver_pickup_location {
8 | latitude: 19.075983
9 | longitude: 72.877655
10 | }
11 | driver_dropoff_location {
12 | latitude: 19.237188
13 | longitude: 72.844139
14 | }
--------------------------------------------------------------------------------
/quickstart/examples/enrichment/elasticsearch_enrichment/resources/seed1.json:
--------------------------------------------------------------------------------
1 | {
2 | "created_at": "2017-05-18T01:19:54Z",
3 | "customer_id": 11,
4 | "email": "dummy_customer@raystack.org",
5 | "name": "dummy customer",
6 | "phone": "+666666000666666",
7 | "updated_at": "2017-05-18T01:20:00Z",
8 | "type": "customer",
9 | "wallet_id": "171380079590001027"
10 | }
11 |
--------------------------------------------------------------------------------
/quickstart/examples/joins/inner_join/resources/kafkafeeder.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | timestamp_now=$(date +%s)
3 | random_3char_suffix=$(pwgen 3 1)
4 | random_enum_index=$(($RANDOM %3))
5 | declare -a myArray=("FLIGHT" "BUS" "TRAIN")
6 | cat sample_message.txt | \
7 | sed "s/replace_timestamp_here/$timestamp_now/g; s/replace_service_type_here/${myArray[$random_enum_index]}/g; s/replace_customer_suffix_here/$random_3char_suffix/g" | \
8 | protoc --proto_path=./ --encode=org.raystack.dagger.consumer.TestBookingLogMessage ./TestLogMessage.proto > message.bin
9 |
--------------------------------------------------------------------------------
/quickstart/examples/joins/inner_join/resources/sample_message.txt:
--------------------------------------------------------------------------------
1 | service_type: replace_service_type_here
2 | order_number: "ynnhjv45"
3 | event_timestamp {
4 | seconds: replace_timestamp_here
5 | }
6 | customer_id: "customer-replace_customer_suffix_here"
7 | driver_pickup_location {
8 | latitude: 19.075983
9 | longitude: 72.877655
10 | }
11 | driver_dropoff_location {
12 | latitude: 19.237188
13 | longitude: 72.844139
14 | }
--------------------------------------------------------------------------------
/quickstart/examples/transformer/deduplication_transformer/resources/kafkafeeder.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | timestamp_now=$(date +%s)
3 | random_3char_suffix=$(pwgen 3 1)
4 | random_enum_index=$(($RANDOM %3))
5 | declare -a myArray=("FLIGHT" "BUS" "TRAIN")
6 | cat sample_message.txt | \
7 | sed "s/replace_timestamp_here/$timestamp_now/g; s/replace_service_type_here/${myArray[$random_enum_index]}/g; s/replace_customer_suffix_here/$random_3char_suffix/g" | \
8 | protoc --proto_path=./ --encode=org.raystack.dagger.consumer.TestBookingLogMessage ./TestLogMessage.proto > message.bin
9 |
--------------------------------------------------------------------------------
/quickstart/examples/transformer/deduplication_transformer/resources/sample_message.txt:
--------------------------------------------------------------------------------
1 | service_type: replace_service_type_here
2 | order_number: "ynnhjv45"
3 | event_timestamp {
4 | seconds: replace_timestamp_here
5 | }
6 | customer_id: "customer-replace_customer_suffix_here"
7 | driver_pickup_location {
8 | latitude: 19.075983
9 | longitude: 72.877655
10 | }
11 | driver_dropoff_location {
12 | latitude: 19.237188
13 | longitude: 72.844139
14 | }
--------------------------------------------------------------------------------
/quickstart/examples/udfs/distance_udf/resources/kafkafeeder.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | timestamp_now=$(date +%s)
3 | random_3char_suffix=$(pwgen 3 1)
4 | random_enum_index=$(($RANDOM %3))
5 | declare -a myArray=("FLIGHT" "BUS" "TRAIN")
6 | cat sample_message.txt | \
7 | sed "s/replace_timestamp_here/$timestamp_now/g; s/replace_service_type_here/${myArray[$random_enum_index]}/g; s/replace_customer_suffix_here/$random_3char_suffix/g" | \
8 | protoc --proto_path=./ --encode=org.raystack.dagger.consumer.TestBookingLogMessage ./TestLogMessage.proto > message.bin
9 |
--------------------------------------------------------------------------------
/quickstart/examples/udfs/distance_udf/resources/sample_message.txt:
--------------------------------------------------------------------------------
1 | service_type: replace_service_type_here
2 | order_number: "ynnhjv45"
3 | event_timestamp {
4 | seconds: replace_timestamp_here
5 | }
6 | customer_id: "customer-replace_customer_suffix_here"
7 | driver_pickup_location {
8 | latitude: 19.075983
9 | longitude: 72.877655
10 | }
11 | driver_dropoff_location {
12 | latitude: 59.237188
13 | longitude: 23.844139
14 | }
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'dagger'
2 |
3 | include 'dagger-core'
4 | include 'dagger-common'
5 | include 'dagger-functions'
6 | include 'dagger-tests'
7 |
--------------------------------------------------------------------------------
/version.txt:
--------------------------------------------------------------------------------
1 | 0.7.0
--------------------------------------------------------------------------------