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

dashboard telemetry is sending non anonymized data to twilio segment #3612

Closed
gberche-orange opened this issue Apr 4, 2023 · 19 comments
Closed
Assignees
Labels
bug 🐛 Something is not working as should be

Comments

@gberche-orange
Copy link
Contributor

Describe the bug

https://docs.testkube.io/reference/telemetry/ mentions

To improve the end-user experience, Testkube collects anonymous telemetry data about usage.
The data collected is always anonymous, not traceable to the source, and only used in aggregate form.
Telemetry collects and scrambles information about the host when the API server is bootstrapped for the first time.

However, the browser request traces from the dashboard front-end show requests are made to twilio segment platform endpoints: cdn.segment.com and api.segment.io with possibly sensitive data:

  • referrer url, potentially including OIDC login page when testkube dashboard is configured with oauth-proxy (e.g. https://myreferer.domain.org/)
  • private dashboard FQDN (e.g. testkube-ui.domain.org)
  • test executions names (e.g. `tests/executions/02-testkube-sample-tests-test-kuttl-data{)

To Reproduce
Steps to reproduce the behavior:

  1. Open dashboard url
  2. deny cookies
  3. Open browser developer tools
  4. Look at requests

See sample requests captured from firefox in curl format
curl 'https://cdn.segment.com/v1/projects/YrfdfjvrZALf5HETS25jDfSiTPfU9wi3/settings' -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0' -H 'Accept: */*' -H 'Accept-Language: en-US,fr-FR;q=0.8,fr;q=0.5,en;q=0.3' -H 'Accept-Encoding: gzip, deflate, br' -H 'Referer: https://testkube-ui.domain.org/' -H 'Origin: https://testkube-ui.domain.org' -H 'DNT: 1' -H 'Connection: keep-alive' -H 'Sec-Fetch-Dest: empty' -H 'Sec-Fetch-Mode: cors' -H 'Sec-Fetch-Site: cross-site'

curl 'https://api.segment.io/v1/t' -X POST -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0' -H 'Accept: */*' -H 'Accept-Language: en-US,fr-FR;q=0.8,fr;q=0.5,en;q=0.3' -H 'Accept-Encoding: gzip, deflate, br' -H 'Referer: https://testkube-ui.domain.org/' -H 'Content-Type: text/plain' -H 'Origin: https://testkube-ui.domain.org' -H 'DNT: 1' -H 'Connection: keep-alive' -H 'Sec-Fetch-Dest: empty' -H 'Sec-Fetch-Mode: cors' -H 'Sec-Fetch-Site: cross-site' -H 'TE: trailers' --data-raw '{"timestamp":"2023-04-04T14:59:41.580Z","integrations":{},"userId":"5b8afd72c1350efca911821600496e50","anonymousId":"3bc847b8-0e90-4f1c-b63f-1bf6c6a60e1f","event":"trackTime","type":"track","properties":{"duration":54300,"page":"tests-settings","hostname":"testkube-ui.domain.org","appVersion":"1.9.0"},"context":{"page":{"path":"/tests/executions/02-testkube-sample-tests-test-kuttl-data","referrer":"https://myreferer.domain.org/","search":"","title":"Settings | Testkube","url":"https://testkube-ui.domain.org/tests/executions/02-testkube-sample-tests-test-kuttl-data"},"userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0","locale":"en-US","library":{"name":"analytics.js","version":"npm:next-1.51.3"}},"messageId":"ajs-next-a81945272bdf93d2eac35354de883f50","writeKey":"YrfdfjvrZALf5HETS25jDfSiTPfU9wi3","sentAt":"2023-04-04T14:59:42.585Z","_metadata":{"bundled":["Segment.io"],"unbundled":[],"bundledIds":[]}}'

Expected behavior

posted data should not include referrers, FQDN, nor test executions data

Version / Cluster

  • Which testkube version? Helm chart version 1.10.101
  • What Kubernetes cluster? (e.g. GKE, EKS, Openshift etc, local KinD, local Minikube)
  • What Kubernetes version?

Screenshots
If applicable, add CLI commands/output to help explain your problem.

Additional context
Add any other context about the problem here.

@gberche-orange gberche-orange added the bug 🐛 Something is not working as should be label Apr 4, 2023
@vsukhin vsukhin added this to Testkube Apr 4, 2023
@github-project-automation github-project-automation bot moved this to 🆕 New in Testkube Apr 4, 2023
@vsukhin
Copy link
Collaborator

vsukhin commented Apr 4, 2023

thank you @gberche-orange good cacth! will consider it as a priority

@rangoo94 rangoo94 self-assigned this Apr 4, 2023
@rangoo94 rangoo94 moved this from 🆕 New to 🏗 In progress in Testkube Apr 4, 2023
@rangoo94 rangoo94 moved this from 🏗 In progress to 👀 In review in Testkube Apr 4, 2023
@rangoo94 rangoo94 moved this from 👀 In review to 🏗 In progress in Testkube Apr 4, 2023
@rangoo94
Copy link
Member

rangoo94 commented Apr 5, 2023

Thank you @gberche-orange! I see two problems here:

  1. We are sending data to Twilio Segment before the consent
  2. We are sending data to Twilio Segment that looks like may be sensitive (host and referrer)

The 1st issue has been fixed at #3609.

The 2nd is more problematic - at the moment Segment's client doesn't allow us to limit the data. I created an issue (segmentio/analytics-next#829) in their library and hope for a quick resolution.

If you still don't feel comfortable with this tracking though, as a temporary solution I may recommend you disabling the telemetry. We will try to sort it out as soon as it will be possible.

@rangoo94 rangoo94 moved this from 🏗 In progress to ⛔️ Blocked in Testkube Apr 5, 2023
@gberche-orange
Copy link
Contributor Author

Thanks a lot @rangoo94 for your detailed answer and this prompt fix ! I'll try to test it shortly.

If you still don't feel comfortable with this tracking though, as a temporary solution I may recommend you disabling the telemetry

I haven't yet found a way to opt-out from telemetry at installation time (just submitted related enhancement suggestion at #3622 )

@rangoo94
Copy link
Member

rangoo94 commented Apr 6, 2023

I got an answer from the Twilio team, and it's actually super simple to hide this data. We have a problem though, that we are using the hostname in Twilio Segment for filtering some environments.

I think that the highest risk is associated with referrers, and we will definitely delete it. @gberche-orange, do you think that it's acceptable, or is sending an FQDN/URL a no-go for you?

@gberche-orange
Copy link
Contributor Author

gberche-orange commented Apr 6, 2023

Thanks a lot @rangoo94 for the update. From the point of view of companies running testkube in sensitive environments such as production, the dashboard fqdn is indeed a sensitive data.

I however saw on issue #3622 that API telemetry is using a hash of the pod hostname as a cluster id. Would a similar dashboard fqdn hash suit the purpose of env filtering without disclosing the fqdn ?

@TheBrunoLopes TheBrunoLopes moved this from ⛔️ Blocked to 🏗 In progress in Testkube Apr 11, 2023
rangoo94 added a commit to kubeshop/testkube-dashboard that referenced this issue Apr 13, 2023
rangoo94 added a commit to kubeshop/testkube-dashboard that referenced this issue Apr 18, 2023
@rangoo94
Copy link
Member

@gberche-orange, sorry for the late update, but it took some time to determine all internal dependencies on that.

I think that we have everything clear now. Next week I plan to apply all the required adjustments to our tooling and environments, and then we should be able to avoid sending hostname and cluster ID at all.

I hope that we'll be able to sort it out next week, but it may slip into the next one.

@rangoo94 rangoo94 moved this from 🏗 In progress to 👀 In review in Testkube May 12, 2023
@rangoo94
Copy link
Member

@gberche-orange, sorry for the delay - we had a lot of improvements included for this release, so the testing took longer than it's expected.

We've just released the chart for 1.11.213, which has the UI telemetry improvements included. I hope that it will work fine for you!

@gberche-orange
Copy link
Contributor Author

@rangoo94 I'm unable to test 1.11.213 due to IPV6 feature regression on IPV4 systems #3846

@rangoo94
Copy link
Member

Sorry for the problem, the ticket #3846 is released now 👍

@gberche-orange
Copy link
Contributor Author

gberche-orange commented May 19, 2023

Thanks @rangoo94 for this fix. I now properly see posted data is now anonymized the url transmitted is now https://dummy.testkube/tests/executions/test-kuttl-data instead of the real url

However, the http headers still include the Referer and Origin headers which are leaking customer dashboard url (e.g. https://testkube-ui-00-core-connectivity-k8s.domain.org in the example below)

Full sample http request captured as curl:

curl 'https://api.segment.io/v1/t' -X POST -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0' -H 'Accept: */*' -H 'Accept-Language: en-US,fr-FR;q=0.8,fr;q=0.5,en;q=0.3' -H 'Accept-Encoding: gzip, deflate, br' -H 'Referer: https://testkube-ui-00-core-connectivity-k8s.domain.org/' -H 'Content-Type: text/plain' -H 'Origin: https://testkube-ui-00-core-connectivity-k8s.domain.org' -H 'DNT: 1' -H 'Connection: keep-alive' -H 'Sec-Fetch-Dest: empty' -H 'Sec-Fetch-Mode: cors' -H 'Sec-Fetch-Site: cross-site' -H 'Pragma: no-cache' -H 'Cache-Control: no-cache' --data-raw '{"timestamp":"2023-05-19T10:05:41.495Z","integrations":{},"userId":"5b8afd72c1350efca911821600496e50","anonymousId":"d25f5ae8-df3c-4d44-aac1-9655f4d8ae02","event":"trackTime","type":"track","properties":{"duration":113100,"page":"tests-details","hostname":"dummy.testkube","appVersion":"1.9.0"},"context":{"page":{"path":"/tests/executions/test-kuttl-data","referrer":"","search":"","title":"test-kuttl-data | Testkube","url":"https://dummy.testkube/tests/executions/test-kuttl-data"},"userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0","locale":"en-US","library":{"name":"analytics.js","version":"npm:next-1.51.7"}},"messageId":"ajs-next-d1ffd52baa06b51bd321f4897b3db792","writeKey":"YrfdfjvrZALf5HETS25jDfSiTPfU9wi3","sentAt":"2023-05-19T10:05:42.479Z","_metadata":{"bundled":["Segment.io"],"unbundled":[],"bundledIds":[]}}'

Can you please also remove/anonymize these headers ?

@rangoo94
Copy link
Member

rangoo94 commented May 22, 2023

Thank you @gberche-orange! I was focused on the payload, and forgot to check the actual headers too.

We will be able to easily delete the Referer header with referrer policy, but I'm not sure if it will be possible to omit the Origin header, as it's cross-origin POST request. I'll experiment with it tomorrow and will inform you about the status then.

@olensmar
Copy link
Member

just wanted to say thank you @gberche-orange for making us aware of this - we definitely want to get telemetry right so you and everyone else feels comfortable using Testkube..

@rangoo94
Copy link
Member

@gberche-orange, unfortunately, I didn't find any way to omit the Origin header. It's not possible at all for the XHR, and it's possible only with mode: 'no-cors for the Fetch API, but JS can't read the response then.

I will update the referrer policy to stop sending the Referrer header though.

rangoo94 added a commit to kubeshop/testkube-dashboard that referenced this issue May 24, 2023
rangoo94 added a commit to kubeshop/testkube-dashboard that referenced this issue May 24, 2023
vsukhin pushed a commit to kubeshop/testkube-dashboard that referenced this issue Jun 1, 2023
* feat: connect to testkube cloud (#667)

* fix: show latest data in execution details / make private registry optional (#665)

* fix: use only one executor object per executor in the Redux slice

Resolves: kubeshop/testkube#3831

* fix: make private registry not required for the executor

Resolves: kubeshop/testkube#3830

* fix: hide form from executor name & type (#664)

Resolves: kubeshop/testkube#3830

* feat: enable NGINX IPv6 (#663)

* chore: update docs links (#662)

* Release v1.11.0 (#648)

* test ci to develop (#634)

* test ci (#635)

* remove sha (#636)

* docs: delete legacy Netlify deployment (#637)

* fix: get test-suite list after creation (#639)

* fix: run GitHub workflows for develop PRs too (#640)

* feat: stop sending the hostname to the Segment.io (#641)

* fix: some forms had never enabled "Save" button (#643)

* update ci for tag creation (#644)

* fix: adjust build release workflow (#649)

Co-authored-by: ypoplavs <[email protected]>

* Multiple test/test-suite execution abortion (#638)

* ui for all execution abortion

* abortion on details page

* added abortion on list

* remove dropdown bg customization

* wrapper style in dots dropdown

* remove on hover trigger

* commented the merge of release branch for now

* fix typo

* command input consistency (#651)

* refactor: enhanced copy command (#652)

Co-authored-by: ediv <[email protected]>

* Types (#642)

* refactor: adjusted typings in many places

* refactor: deleted redundant import and @src

* refactor: changes according to comments on PR

* refactor: changes according to comments on PR

* refactor: changes according to comments on PR from Dawid

* refactor: changes according to comments on PR from Dawid

* refactor: fixed github job

* refactor: changes due to comments on PR

---------

Co-authored-by: ediv <[email protected]>

* fix: deleted a redundant row from entity grid item (#654)

Co-authored-by: ediv <[email protected]>

* feat: added a custom space component (#660)

* feat: added a custom space component

* feat: renamed the component according to comment on PR

---------

Co-authored-by: ediv <[email protected]>

* fix: show axis for executions even when there is a lot of them (#659)

Resolves: kubeshop/testkube#3466

* fix: immediately return new data from RTK (#658)

Resolves: kubeshop/testkube#3776

* fix: round test duration correctly (#657)

* fix: round test duration correctly

Resolves: kubeshop/testkube#3743

* fixup test

* fix: allow dots in k8s resource names (#656)

Resolves: kubeshop/testkube#3816

* fix: glitching skeleton animation (#655)

* fix: glitching skeleton animation

* fixup lint

* fix: use Git tokens and Git usernames correctly for the Test Sources (#653)

* fix: create test source with Git token correctly
* fix: updating git token/username in the test source details
* fix: show repository URL for the proper source
* use FullWidthSpace

Resolves: testkube#3810

* fix: some console errors (#661)

* fix: show latest data in execution details / make private registry optional (#665)

* fix: use only one executor object per executor in the Redux slice

Resolves: kubeshop/testkube#3831

* fix: make private registry not required for the executor

Resolves: kubeshop/testkube#3830

* fix: hide form from executor name & type (#664)

Resolves: kubeshop/testkube#3830

* feat: enable NGINX IPv6 (#663)

* chore: update docs links (#662)

---------

Co-authored-by: ypoplavs <[email protected]>
Co-authored-by: Bogdan Hanea <[email protected]>
Co-authored-by: Pavlo Burchak <[email protected]>
Co-authored-by: ypoplavs <[email protected]>
Co-authored-by: Toxer10 <[email protected]>
Co-authored-by: ediv <[email protected]>
Co-authored-by: ahmedimf1 <[email protected]>
Co-authored-by: Abdallah Abedraba <[email protected]>

* feat: dashboard E2E tests migrated from main repo (#669)

* E2E tests migrated from main repo

* E2E tests migrated from main repo - dir change

* updated after linter

* updated after linter

* updated after linter

* typo fixed

* semicolons

* fixes after eslint

* fixes after eslint

* ci: rename release branch (#673)

* rename release branch

* ci: rename release branch (#672)

* rename release branch

* feat: connect to testkube cloud (#667)

* feat: dashboard E2E tests migrated from main repo (#669)

* E2E tests migrated from main repo

* E2E tests migrated from main repo - dir change

* updated after linter

* updated after linter

* updated after linter

* typo fixed

* semicolons

* fixes after eslint

* fixes after eslint

* refactor: changed theme color and styling (#668)

* feat: connect to testkube cloud (#667)

* fix: show latest data in execution details / make private registry optional (#665)

* fix: use only one executor object per executor in the Redux slice

Resolves: kubeshop/testkube#3831

* fix: make private registry not required for the executor

Resolves: kubeshop/testkube#3830

* fix: hide form from executor name & type (#664)

Resolves: kubeshop/testkube#3830

* refactor: changed theme color and styling

---------

Co-authored-by: Bogdan Hanea <[email protected]>
Co-authored-by: Dawid Rusnak <[email protected]>
Co-authored-by: ediv <[email protected]>

* feat: add ModalOutletProvider that's automatically injecting the ModalOutlet (#670)

* fix naming (#677)

* fix: E2E tests - fix tests after eslint fixes (#676)

* feat: connect to testkube cloud (#667)

* fix: show latest data in execution details / make private registry optional (#665)

* fix: use only one executor object per executor in the Redux slice

Resolves: kubeshop/testkube#3831

* fix: make private registry not required for the executor

Resolves: kubeshop/testkube#3830

* fix: hide form from executor name & type (#664)

Resolves: kubeshop/testkube#3830

* feat: enable NGINX IPv6 (#663)

* chore: update docs links (#662)

* feat: dashboard E2E tests migrated from main repo (#669)

* E2E tests migrated from main repo

* E2E tests migrated from main repo - dir change

* updated after linter

* updated after linter

* updated after linter

* typo fixed

* semicolons

* fixes after eslint

* fixes after eslint

* ci: rename release branch (#672)

* rename release branch

* typo fixed

---------

Co-authored-by: Bogdan Hanea <[email protected]>
Co-authored-by: Dawid Rusnak <[email protected]>
Co-authored-by: ahmedimf1 <[email protected]>
Co-authored-by: Abdallah Abedraba <[email protected]>
Co-authored-by: ypoplavs <[email protected]>

* fix: fixed home page UI (#679)

Co-authored-by: ediv <[email protected]>

* fix: enable IPv6 for nginx only when ENABLE_IPV6 is set to true (#680)

Relates to: kubeshop/testkube#3846

* fix: enable IPv6 for nginx only when ENABLE_IPV6 is set to true (#683)

Relates to: kubeshop/testkube#3846

* tech: used FullWidthSpace instead of StyledSpace with inline width (#681)

Co-authored-by: ediv <[email protected]>

* Utilize external links (#686)

* utilize external links

* fix type

* add timeout doc

* fix sider links (#687)

* Move error reports into the area where they were triggered (#685)

* notifications in cards

* validation fix

* refactored error handling, added scroll to notification

* refactor notification flow

* set null error on submit

Co-authored-by: Dawid Rusnak <[email protected]>

---------

Co-authored-by: Dawid Rusnak <[email protected]>

* tech: read PostHog, Segment and GA4 keys from env variables (#688)

* tech: read PostHog, Segment and GA4 keys from env variables
* replace with created secrets

Resolves: kubeshop/testkube#3875

* fix: avoid sending Referer header (#691)

Related to: kubeshop/testkube#3612

* feat: add contact Us external link (#694)

* feat: implemented OSS to Cloud hints for OSS (#690)

* feat: implemented OSS to Cloud hints for OSS

* feat: changes according to comments on PR

* feat: changes due to comments on PR

* feat: changes due to comments on PR

* feat: adjusted stylelint rule

* feat: adjusted stylelint

* feat: changes due to comments on PR

* feat: changes due to comments on PR

---------

Co-authored-by: ediv <[email protected]>

* feat: add REACT_APP_DISABLE_TELEMETRY to force disabling telemetry (#692)

Related to: kubeshop/testkube#3884

* feat: report Git version in telemetry (#693)

* feat: use Git version for analytics

Resolves: kubeshop/testkube#3881

* feat: expose app version in meta[app-version]

* feat: send app version to PostHog too

Resolves: kubeshop/testkube#3887

* feat: avoid processing IP in PostHog

* fix: fixed cloud banner on Cloud (#695)

Co-authored-by: ediv <[email protected]>

* ci: update gh token var (#696)

* feat: adjusted FullWidthSpace component, added new prop (#697)

* feat: adjusted FullWidthSpace component, added new prop

* tech: added a new color

* tech: changed the color

* tech: changes due to comments on PR

---------

Co-authored-by: ediv <[email protected]>

* ci: add docker registry description (#699)

* add GH for uploading readme to dockerhub registry

* feat: integrate Prettier (#698)

* chore: update Prettier

- new version supports --cache flag

* feat: move Prettier configuration to JS file and adjust import orders

* chore: rename deprecated Prettier option

* feat: run Prettier formatting on pre-commit

Resolves: kubeshop/testkube#3709

* feat: add cache for ESLint

* feat: check Prettier formatting on CI/CD

* chore: run Prettier against the source

* fix: delete unused parts of package.json

* fix: make whole page scrollable (#701)

* fix: make whole page scrollable

Resolves: kubeshop/testkube#3901

* chore: delete unnecessary overflow

* fix: align paddings of the notification wrapper

* fix: make html & body full height too

* fix: make sider scrollable too on smaller devices

* Allow using Prettier from different dir (#704)

* Labels improvements (#702)

* labels improvements

* refactored labels multiselect

* fix default labels props

* fixes after review

* Implement Triggers store in Zustand (#703)

* triggers zustand

* local trigger store

* remove files and renaming

* prettier fix

---------

Co-authored-by: Bogdan Hanea <[email protected]>

* ci: add workflow dispatch (#706)

* fix: fixed dropdown styles (#705)

Co-authored-by: ediv <[email protected]>

* fix: fixed dropdown UI (#707)

Co-authored-by: ediv <[email protected]>

* fix: fixed a problem reported by Tomek (#709)

Co-authored-by: ediv <[email protected]>

* tech: make Zustand contextual (#710)

* feat: add utilities for local Zustand stores and use it for Triggers

* feat: create combined store for Dashboard

* feat: inject combined store for whole Dashboard

* fix: show existing Test Suite steps (#714)

Resolves: kubeshop/testkube#3940

* fix: allow non-root user for the Docker image (#708)

Resolves: kubeshop/testkube#3931

* fix: avoid infinite recursion due to always truthy update on error (#715)

* feat: add overrides mechanism for testing variables (#716)

* feat: add overrides mechanism for testing variables

Resolves: kubeshop/testkube#3948

* typo: rename hasOverridesApplied to areOverridesApplied

---------

Co-authored-by: Bogdan Hanea <[email protected]>
Co-authored-by: Dawid Rusnak <[email protected]>
Co-authored-by: ahmedimf1 <[email protected]>
Co-authored-by: Abdallah Abedraba <[email protected]>
Co-authored-by: Pavlo Burchak <[email protected]>
Co-authored-by: Toxer10 <[email protected]>
Co-authored-by: ediv <[email protected]>
Co-authored-by: Tomasz Konieczny <[email protected]>
Co-authored-by: Tomasz Konieczny <[email protected]>
@rangoo94
Copy link
Member

rangoo94 commented Jun 7, 2023

@gberche-orange, sorry I forgot to put an update. The fix for the Referer has been released on 1st June (Helm chart - 1.12.5), so it should be available in the latest release.

@gberche-orange
Copy link
Contributor Author

The fix for the Referer has been released on 1st June (Helm chart - 1.12.5), so it should be available in the latest release.

thanks @rangoo94 for your efforts to preserve privacy on the testkube telemetry

It's not possible at all for the XHR, and it's possible only with mode: 'no-cors for the Fetch API, but JS can't read the response then.

I wonder what response from twilio is expected, and what impact this has if the response can't be read ?

@rangoo94
Copy link
Member

rangoo94 commented Jun 7, 2023

When mode: 'no-cors' is used, you don't have access to any response information for cross origin requests (including the status code / error). It feels like UDP experience - you send the data, but you don't know anything about the packet status.

Tracking systems like Twilio Segment have retrying and queuing mechanisms. When there is no information about the response, it can't determine the event status and would put it back to the queue. Otherwise it would risk data corruption.

I think that they could use GET requests to solve that, but that could lead to some limitations - first that comes to my mind is URL size limit, but there may be more.

@gberche-orange
Copy link
Contributor Author

Thanks, would it make sense to submit an upstream issue describing the privacy issue that current twilio segment implementation causes to testkube ?

@rangoo94
Copy link
Member

I think that it would be very problematic for Twilio - they need to avoid breaking changes, so they would need to maintain additional endpoints, that would behave differently.

I believe that for such cases, they could recommend proxying it via our own infrastructure, to have full control over the data sent (i.e. with segmentio/segment-proxy, but it's pretty old).

Unfortunately, I don't think that we are capable to handle it on our side, at least for now. It's a really small flaw, and we would need to maintain another component specifically to solve that.

@rangoo94
Copy link
Member

rangoo94 commented Aug 8, 2023

I'm closing this ticket, as most of the problems are fixed.

To fix the last part, we would need to use custom proxy, but that would introduce unnecessary complexity for us, while that is rather not a significant problem.

@rangoo94 rangoo94 closed this as completed Aug 8, 2023
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in Testkube Aug 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug 🐛 Something is not working as should be
Projects
Status: Done
Development

No branches or pull requests

4 participants