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

telemetry: start tracking flags usage #6168

Merged

Conversation

kadel
Copy link
Member

@kadel kadel commented Sep 23, 2022

What type of PR is this:

/kind feature

What does this PR do / why we need it:
Record what flags are used when the odo command is executed.

This will be helpful to get more insights what features are being used.
For example, currently, we can't see how many users user debug mode odo dev --debug or --no-watch feature. With this, we will be able to get more insights if those features are being used.

It would be nice to include this in the v3 GA build, so we can start tracking this from the beginning.

PR acceptance criteria:

  • Unit test

  • Integration test

  • Documentation

How to test changes / Special notes to the reviewer:

@openshift-ci openshift-ci bot added the kind/feature Categorizes issue as a feature request. For PRs, that means that the PR is the implementation label Sep 23, 2022
@netlify
Copy link

netlify bot commented Sep 23, 2022

Deploy Preview for odo-docusaurus-preview canceled.

Name Link
🔨 Latest commit 5222381
🔍 Latest deploy log https://app.netlify.com/sites/odo-docusaurus-preview/deploys/632dcb4ef6ca4d00089a1caf

@openshift-ci
Copy link

openshift-ci bot commented Sep 23, 2022

@kadel: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/unit-and-validate-test 80a09ef link true /test unit-and-validate-test

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@odo-robot
Copy link

odo-robot bot commented Sep 23, 2022

Unit Tests on commit 6e85f18 finished successfully.
View logs: TXT HTML

Copy link
Member

@rm3l rm3l left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you change the target branch for this PR to release/v3.0.0 instead, to have this in v3 GA? main already contains a bunch of code refactoring and a few other changes (like #6166) are coming in as well.

@odo-robot
Copy link

odo-robot bot commented Sep 23, 2022

Validate Tests on commit 6e85f18 finished successfully.
View logs: TXT HTML

@odo-robot
Copy link

odo-robot bot commented Sep 23, 2022

OpenShift Tests on commit 6e85f18 finished with errors.
View logs: TXT HTML

@kadel kadel changed the base branch from main to release/v3.0.0 September 23, 2022 15:07
@odo-robot
Copy link

odo-robot bot commented Sep 23, 2022

Kubernetes Tests on commit 6e85f18 finished successfully.
View logs: TXT HTML

@odo-robot
Copy link

odo-robot bot commented Sep 23, 2022

Windows Tests (OCP) on commit 6e85f18 finished with errors.
View logs: TXT HTML

@rm3l rm3l added the area/telemetry Issues or PRs related to telemetry or metrics collection label Sep 23, 2022
Copy link
Member

@rm3l rm3l left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another comment. I saw that we have a few integration tests related to telemetry, checking the values in $ODO_DEBUG_TELEMETRY_FILE.
It would be great to also update some of those tests that use flags, I think.
Example with cmd_devfile_init_test: https://github.com/redhat-developer/odo/blob/release/v3.0.0/tests/integration/cmd_devfile_init_test.go#L347-L366

@kadel kadel changed the title telementry: start tracking flags usage [WIP] telementry: start tracking flags usage Sep 26, 2022
@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. Required by Prow. label Sep 26, 2022
@kadel kadel changed the title [WIP] telementry: start tracking flags usage telementry: start tracking flags usage Sep 27, 2022
@openshift-ci openshift-ci bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. Required by Prow. label Sep 27, 2022
@rm3l rm3l changed the title telementry: start tracking flags usage telemetry: start tracking flags usage Sep 27, 2022
@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. Required by Prow. label Sep 27, 2022
@rm3l
Copy link
Member

rm3l commented Sep 27, 2022

Closing and reopening to (hopefully) trigger the IBM Cloud tests.
As seen with @anandrkskd and @feloy, we had to clone the existing stages as the existing ones are triggered only for PRs targeting the main branch.

@rm3l rm3l closed this Sep 27, 2022
@rm3l rm3l reopened this Sep 27, 2022
@rm3l
Copy link
Member

rm3l commented Sep 27, 2022

@kadel Tests are not passing because the release/v3.0.0 branch was created before the fix done following the revert in the Devfile staging registry.
I've cherry-picked the fix we did in #6164 into the release/v3.0.0 branch.
Can you rebase your branch onto release/v3.0.0?

@openshift-ci openshift-ci bot removed the lgtm Indicates that a PR is ready to be merged. Required by Prow. label Sep 28, 2022
@rm3l rm3l added the lgtm Indicates that a PR is ready to be merged. Required by Prow. label Sep 28, 2022
@rm3l
Copy link
Member

rm3l commented Sep 28, 2022

Retriggering the tests by closing and reopening the PR.

FYI, @dharmit (as test boss this week ;-)), below are the issues:


OpenShift:

Timed out after 360.015s.
  Expected
      <string>:   __
       /  \__     Developing using the mynode Devfile
       \__/  \    Namespace: cmd-add-binding-test271ioo
       /  \__/    odo version: v3.0.0-rc2
       \__/
      
      ↪ Deploying to the cluster in developer mode
       •  Waiting for Kubernetes resources  ...
       •  Creating kind ServiceBinding  ...
      
 ✓  Creating kind ServiceBinding 
       ⚠  Pod is Pending
       ✓  Pod is Running
      Error occurred on Push - watch command was unable to push component: some servicebindings are not injected
      Error occurred on Push - watch command was unable to push component: some servicebindings are not injected
      
       ⚠  Pod is Terminating
       ⚠  No pod exists
       ⚠  Pod is Pending
       ✓  Pod is Running
      Error occurred on Push - watch command was unable to push component: some servicebindings are not injected

Windows (however, because of #6175, I would not have much confidence in Windows tests for this PR):

Timed out after 360.011s.
  Expected
      <string>:   __
       /  \__     Developing using the "my-nodejs-app" Devfile
       \__/  \    Namespace: cmd-describe-list-binding-test581isw
       /  \__/    odo version: v3.0.0-rc2
       \__/
      
      - Deploying to the cluster in developer mode
       -  Waiting for Kubernetes resources  ...
       -  Creating kind ServiceBinding  ...
      

 V  Creating kind ServiceBinding 
       !  Pod is Pending
       V  Pod is Running
       !  Pod is Terminating
       !  No pod exists
       !  Pod is Pending
!  Failed to create pod sandbox: rpc error: code = Unknown desc = failed to create pod network sandbox k8s_my-nodejs-app-app-79b44cbd76-jh8t2_cmd-describe-list-binding-test581isw_fb689d00-1546-4acc-bfbb-59d286522677_0(f542280489fcd4c3557b632f3720f019dd4c9c638c108bcdbd985854c15596f9): error adding pod cmd-describe-list-binding-test581isw_my-nodejs-app-app-79b44cbd76-jh8t2 to CNI network "multus-cni-network": Multus: [cmd-describe-list-binding-test581isw/my-nodejs-app-app-79b44cbd76-jh8t2/fb689d00-1546-4acc-bfbb-59d286522677]: error getting pod: Get "[https://[172.20.0.1]:2040/api/v1/namespaces/cmd-describe-list-binding-test581isw/pods/my-nodejs-app-app-79b44cbd76-jh8t2?timeout=1m0s&quot;:](https://[172.20.0.1]:2040/api/v1/namespaces/cmd-describe-list-binding-test581isw/pods/my-nodejs-app-app-79b44cbd76-jh8t2?timeout=1m0s%22:) net/http: TLS handshake timeout

@rm3l rm3l closed this Sep 28, 2022
@rm3l rm3l reopened this Sep 28, 2022
@rm3l rm3l added this to the v3.0.0 🚀 milestone Sep 30, 2022
@rm3l
Copy link
Member

rm3l commented Oct 3, 2022

/approve

@openshift-ci
Copy link

openshift-ci bot commented Oct 3, 2022

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: rm3l

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. Required by Prow. label Oct 3, 2022
@rm3l
Copy link
Member

rm3l commented Oct 3, 2022

@kadel Sorry to ask again, but could you please rebase your branch onto release/v3.0.0?

#6177 has fixed an issue preventing Windows tests from running with the right changes if PR was not targeting main.
This should hopefully allow such tests to run correctly.

Thanks.

@openshift-ci openshift-ci bot removed the lgtm Indicates that a PR is ready to be merged. Required by Prow. label Oct 3, 2022
@rm3l
Copy link
Member

rm3l commented Oct 3, 2022

@kadel Looks like you have rebased onto main, not release/v3.0.0 ;-)

@kadel
Copy link
Member Author

kadel commented Oct 3, 2022

@kadel Looks like you have rebased onto main, not release/v3.0.0 ;-)

yeh :-(
now it should be ok

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. Required by Prow. label Oct 3, 2022
@rm3l
Copy link
Member

rm3l commented Oct 3, 2022

 X  Building your application in container on cluster (command: devbuild) [2m]
    [odo] I1003 07:29:07.359070    6940 remotecmd.go:46] ExecuteCommand returned an an err: error while streaming command: command terminated with exit code 1. for command '[/bin/sh -c cd ${PROJECTS_ROOT} && (npm install) 1>>/proc/1/fd/1 2>>/proc/1/fd/2]'
    [odo] stdout: []
    [odo] stderr: []
    [odo] npm ERR! code ENOTFOUND
    [odo] npm ERR! errno ENOTFOUND
    [odo] npm ERR! network request to https://registry.npmjs.org/express failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org
    [odo] npm ERR! network This is a problem related to network connectivity.
    [odo] npm ERR! network In most cases you are behind a proxy or have bad network settings.
    [odo] npm ERR! network 
    [odo] npm ERR! network If you are behind a proxy, please make sure that the
    [odo] npm ERR! network 'proxy' config is set properly.  See: 'npm help config'
    [odo] 
    [odo] npm ERR! A complete log of this run can be found in:
    [odo] npm ERR!     /opt/app-root/src/.npm/_logs/2022-10-03T12_29_07_333Z-debug.log

Windows tests failing due to some (temporary?) network issues? cc @feloy (as test boss this week ;-))

Retrying one more time..

@rm3l rm3l closed this Oct 3, 2022
@rm3l rm3l reopened this Oct 3, 2022
@feloy feloy closed this Oct 3, 2022
@feloy feloy reopened this Oct 3, 2022
@sonarcloud
Copy link

sonarcloud bot commented Oct 3, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@feloy
Copy link
Contributor

feloy commented Oct 3, 2022

/override windows-integration-test/Windows-test
Non related Network failures

@openshift-ci
Copy link

openshift-ci bot commented Oct 3, 2022

@feloy: Overrode contexts on behalf of feloy: windows-integration-test/Windows-test

In response to this:

/override windows-integration-test/Windows-test
Non related Network failures

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@openshift-merge-robot openshift-merge-robot merged commit 86334d1 into redhat-developer:release/v3.0.0 Oct 3, 2022
@rm3l rm3l added the v3 label Oct 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. Required by Prow. area/telemetry Issues or PRs related to telemetry or metrics collection kind/feature Categorizes issue as a feature request. For PRs, that means that the PR is the implementation lgtm Indicates that a PR is ready to be merged. Required by Prow.
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

4 participants