Skip to content

Commit

Permalink
Add documentation for relay-proxy
Browse files Browse the repository at this point in the history
  • Loading branch information
thomaspoignant committed Oct 31, 2024
1 parent 8c6e612 commit bfbd1ca
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 16 deletions.
36 changes: 25 additions & 11 deletions website/docs/configure_flag/export_flags_usage.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,13 @@
sidebar_position: 40
description: How to export evaluation data?
---





import {Cards} from '@site/src/components/doc/cardv2';
import { ConfigCardContent } from "@site/src/components/doc/configCardContent";
import {ConfigCardContent} from "@site/src/components/doc/configCardContent";
import customlogo from '@site/static/docs/collectors/custom.png';
import filelogo from '@site/static/docs/collectors/file.png';
import googlelogo from '@site/static/docs/collectors/google.png';
Expand All @@ -13,6 +18,7 @@ import webhooklogo from '@site/static/docs/collectors/webhook.png';
import sqslogo from '@site/static/docs/collectors/sqs.png';
import kafkalogo from '@site/static/docs/collectors/kafka.png';
import pubsublogo from '@site/static/docs/collectors/pubsub.png';
import kinesislogo from '@site/static/docs/collectors/kinesis.png';


# How to export evaluation data
Expand All @@ -30,73 +36,81 @@ To use, simply configure and use the feature flag as normal, and analyze the col
<Cards cards={[
{
logoImg: s3logo,
title:"AWS S3",
title: "AWS S3",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#s3-1'}
goModuleLink={'../go_module/data_collection/s3'}
/>
},
{
logoImg: sqslogo,
title:"AWS SQS",
title: "AWS SQS",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#sqs'}
goModuleLink={'../go_module/data_collection/sqs'}
/>
},
{
logoImg: kafkalogo,
title:"Kafka",
title: "Kafka",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#kafka'}
goModuleLink={'../go_module/data_collection/kafka'}
/>
},
{
logoImg: googlelogo,
title:"Google Storage",
title: "Google Storage",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#google-storage-1'}
goModuleLink={'../go_module/data_collection/google_cloud_storage'}
/>
},
{
logoImg: pubsublogo,
title:"Google PubSub",
title: "Google PubSub",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#google-pubsub'}
goModuleLink={'../go_module/data_collection/google_pubsub'}
/>
},
{
logoImg: webhooklogo,
title:"Webhook",
title: "Webhook",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#webhook'}
goModuleLink={'../go_module/data_collection/webhook'}
/>
},
{
logoImg: filelogo,
title:"Local File",
title: "Local File",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#file-1'}
goModuleLink={'../go_module/data_collection/file'}
/>
},
{
logoImg: loglogo,
title:"Webhook",
title: "Log",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#log'}
goModuleLink={'../go_module/data_collection/log'}
/>
},
{
logoImg: kinesislogo,
title: "AWS Kinesis",
content: <ConfigCardContent
relayproxyLink={'../relay_proxy/configure_relay_proxy#aws-kinesis'}
goModuleLink={'../go_module/data_collection/kinesis'}
/>
},
{
logoImg: customlogo,
title:"Custom ...",
title: "Custom ...",
content: <ConfigCardContent
goModuleLink={'../go_module/data_collection/custom'}
/>
},
]} />
]}/>
20 changes: 15 additions & 5 deletions website/docs/relay_proxy/configure_relay_proxy.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ ex: `AUTHORIZEDKEYS_EVALUATION=my-first-key,my-second-key`)_.
| `listen` | int | `1031` | This is the port used by the relay proxy when starting the HTTP server. |
| `pollingInterval` | int | `60000` | This is the time interval **in millisecond** when the relay proxy is reloading the configuration file.<br/>The minimum time accepted is 1000 millisecond. |
| `enablePollingJitter` | boolean | `false` | Set to true if you want to avoid having true periodicity when retrieving your flags. It is useful to avoid having spike on your flag configuration storage in case your application is starting multiple instance at the same time.<br/>We ensure a deviation that is maximum ±10% of your polling interval.<br />Default: false |
| `DisableNotifierOnInit` | boolean | `false` | If **true**, the relay proxy will not call any notifier when the flags are loaded during initialization. This is useful if you do not want a Slack/Webhook notification saying that the flags have been added every time you start the proxy.<br/>Default: **false** |
| `DisableNotifierOnInit` | boolean | `false` | If **true**, the relay proxy will not call any notifier when the flags are loaded during initialization. This is useful if you do not want a Slack/Webhook notification saying that the flags have been added every time you start the proxy.<br/>Default: **false** |
| `hideBanner` | boolean | `false` | Should we display the beautiful **go-feature-flag** banner when starting the relay proxy |
| `enableSwagger` | boolean | `false` | Enables Swagger for testing the APIs directly. If you are enabling Swagger you will have to provide the `host` configuration and the Swagger UI will be available at `http://<host>:<listen>/swagger/`. |
| `host` | string | `localhost` | This is the DNS you will use to access the relay proxy. This field is used by Swagger to query the API at the right place. |
Expand Down Expand Up @@ -257,16 +257,26 @@ the [doc](../go_module/store_file/redis#expected-format) available._

| Field name | Type | Default | Description |
|-------------------|----------|-------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `kind` | string | **none** | **(mandatory)** Value should be **`kafka`**.<br/>_This field is mandatory and describes which retriever you are using._ |
| `kafka.topic` | string | **none** | **(mandatory)** Kafka topic to bind to. |
| `kafka.addresses` | []string | **none** | **(mandatory)** List of bootstrap addresses for the Kafka cluster. |
| `kafka.config` | object | _see description_ | This field allows fine tuning of the Kafka reader. This object should contain the [Sarama configuration](https://pkg.go.dev/github.com/IBM/sarama#Config) that the reader will use. On empty, a sensible default is created using [sarama.NewConfig()](https://pkg.go.dev/github.com/IBM/sarama#NewConfig) |

### Google PubSub

| Field name | Type | Default | Description |
|-------------|--------|----------|------------------------------------------------------------------|
| `projectID` | string | **none** | **(mandatory)** Value should be ID of GCP project you are using. |
| `topic` | string | **none** | **(mandatory)** Topic name on which messages will be published. |
| Field name | Type | Default | Description |
|-------------|--------|----------|--------------------------------------------------------------------------------------------------------------------------|
| `kind` | string | **none** | **(mandatory)** Value should be **`pubsub`**.<br/>_This field is mandatory and describes which retriever you are using._ |
| `projectID` | string | **none** | **(mandatory)** Value should be ID of GCP project you are using. |
| `topic` | string | **none** | **(mandatory)** Topic name on which messages will be published. |

### AWS Kinesis

| Field name | Type | Default | Description |
|--------------|--------|----------|---------------------------------------------------------------------------------------------------------------------------|
| `kind` | string | **none** | **(mandatory)** Value should be **`kinesis`**.<br/>_This field is mandatory and describes which retriever you are using._ |
| `streamArn` | string | **none** | **(mandatory)** The ARN of your kinesis stream. |
| `streamName` | string | **none** | The name of your kinesis stream. |

<a name="notifier"></a>

Expand Down

0 comments on commit bfbd1ca

Please sign in to comment.