Camunda-modeler: Pings with missing installation parameter sent to ET

Created on 22 Jan 2021  路  12Comments  路  Source: camunda/camunda-modeler

__Describe the Bug__


ET has rejected over 1000 pings from the modeler over the last 5 days (the first one was on 18.01.21 at 11:39am), because of a missing "installation" parameter (see Google cloud error logs).

This rejected data is not showing in Kibana and might distort your analysis there, so you should probably look into why this is happening and how it can be fixed.

__Steps to Reproduce__

none

__Expected Behavior__


The pings sent to ET are expected to include the "installation" parameter.

__Environment__

  • OS: probably irrelevant
  • Camunda Modeler Version: 4.5.0 Community

/cc @casulond

Related to https://github.com/camunda/camunda-modeler/issues/1965

ET bug

Most helpful comment

We were able to find the problem: https://github.com/camunda/camunda-modeler/pull/2116

tldr: the installation id is only set on early enabling (on application start). If you enable the usage statistics on runtime, e.g. via the privacy preferences modal, the editor id would be empty. So it's likely that there is a missing editor id in the E.T. payload _for every new user who enables E.T. as a first step_.

The PR should fix this problem that we don't send a missing installation id to E.T. + making sure it's available anytime soon.

Thanks a lot for your patience @btepe @casulond 馃憤

All 12 comments

Thanks for reporting!

We had the same problem in the past (https://github.com/camunda/camunda-modeler/issues/1965), but seems like it was hard to reproduce and not easy to fix.

We should keep on having our eyes on that.

CC @quentinleroy

Just for awareness, no action required

because of a missing "product.version" parameter (see Google cloud error logs).

I was trying to monitor this. But seems like I have not the necessary permissions

image

I am using my Camunda account on Google. Is there anything else I need to have?

because of a missing "product.version" parameter (see Google cloud error logs).

I was trying to monitor this. But seems like I have not the necessary permissions

image

I am using my Camunda account on Google. Is there anything else I need to have?

We're sorry for the information about the missing product.version in some parts of the issue description. It is always the installation that is missing. That was a typo - I corrected the initial comment.

I'd like to share a log message with you. We should have done that initially instead of sharing a link because we don't want to grant access to the logs in general. I'm sharing a snippet of an error log entry with you - we log only limited fields from the request:

{
  "message": "ValidationError: \"installation\" is required for request from Camunda Modeler 4.5.0 Community (middlewareError)",
  "@type": "type.googleapis.com/google.devtools.clouderrorreporting.v1beta1.ReportedErrorEvent",
  "meta": {
    "stack": "ValidationError: \"installation\" is required",
    "message": "uncaughtException: \"installation\" is required\nValidationError: \"installation\" is required",
    "exception": true,
    "level": "error",
    "error": {
      "statusCode": 422,
      "expose": true,
      "details": [
        {
          "type": "any.required",
          "message": "\"installation\" is required",
          "path": [
            "installation"
          ],
          "context": {
            "key": "installation",
            "label": "installation"
          }
        }
      ],
      "status": 422
    },
    "date": "Tue Jan 26 2021 10:40:40 GMT+0000 (Coordinated Universal Time)",
    "trace": [],
    "req": {
      "body": {
        "product": {
          "name": "Camunda Modeler",
          "edition": "Community",
          "version": "4.5.0",
          "internals": {
            "event": "ping"
          }
        }
      },
      "method": "POST",
      "httpVersion": "1.1",
      "headers": {
        "accept": "application/json",
        "content-length": "107",
        "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) CamundaModeler/4.5.0 Chrome/78.0.3904.130 Electron/7.1.14 Safari/537.36",
        "content-type": "application/json",
        "host": "api.telemetry.camunda.cloud"
      }
    }
  }
}

Let me know if you need more samples or other information. We can also talk on Zoom or so and have a look at the logs together with screen-sharing.

Proposal: Before sending the PING we validate that the installation is set on our side. If not, that is an error we track in Sentry. This way we can advance this topic on our side (and fix the broken behavior, eventually).

Above, GitHub mentioned milestone M45 in relation to this issue:

image

Looking at the milestone M45, it is closed while this issue is still open. What is your targeted schedule for fixing this issue?

tbh: I would just go with the solution @nikku proposed

  • keep the broken data away from E.T.
  • track it our side, where it has less impact

I'll follow up on this.

@casulond The issue is not part of the milestone anymore. Hence it is still open.

We were able to find the problem: https://github.com/camunda/camunda-modeler/pull/2116

tldr: the installation id is only set on early enabling (on application start). If you enable the usage statistics on runtime, e.g. via the privacy preferences modal, the editor id would be empty. So it's likely that there is a missing editor id in the E.T. payload _for every new user who enables E.T. as a first step_.

The PR should fix this problem that we don't send a missing installation id to E.T. + making sure it's available anytime soon.

Thanks a lot for your patience @btepe @casulond 馃憤

Great work guys :clap:. And thanks for being persistent @btepe @casulond, too :tada:.

Great that you found the source of the issue 馃憦 馃帀

Was this page helpful?
0 / 5 - 0 ratings