Uploaded image for project: 'Camunda Optimize'
  1. Camunda Optimize
  2. OPT-4403

Handle telemetry failing to resolve placeholder URL

    • Icon: Task Task
    • Resolution: Done
    • Icon: L2 - Critical L2 - Critical
    • 3.2.0
    • None
    • backend
    • None
    • Not defined

      When Optimize is started, the telemetry URL is resolved as the environment variable or the placeholder. However, the placeholder is causing an error in it's formatting when its used

      ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled taskERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled taskjava.lang.IllegalArgumentException: Illegal character in scheme name at index 0: 'https://api.int.telemetry.camunda.cloud/pings' at java.net.URI.create(URI.java:852) at org.apache.http.client.methods.HttpPost.<init>(HttpPost.java:73) at org.camunda.optimize.service.telemetry.TelemetrySendingService.sendTelemetryData(TelemetrySendingService.java:44) at org.camunda.optimize.service.telemetry.TelemetryScheduler.run(TelemetryScheduler.java:47) at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:93) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)Caused by: java.net.URISyntaxException: Illegal character in scheme name at index 0: 'https://api.int.telemetry.camunda.cloud/pings' at java.net.URI$Parser.fail(URI.java:2848) at java.net.URI$Parser.checkChars(URI.java:3021) at java.net.URI$Parser.checkChar(URI.java:3031) at java.net.URI$Parser.parse(URI.java:3047) at java.net.URI.<init>(URI.java:588) at java.net.URI.create(URI.java:850) ... 12 common frames omitted
      

      We should investigate the cause of failure (probably a missing license) and handle it more gracefully.

        This is the controller panel for Smart Panels app

            [OPT-4403] Handle telemetry failing to resolve placeholder URL

            Joshua Windels created issue -
            Joshua Windels made changes -
            Status Original: Open [ 1 ] New: In Specification [ 10000 ]
            Joshua Windels made changes -
            Description Original: When Optimize is started and there is no license saved, the telemetry sending will fail. However, this isn't handled by Optimize properly, so we get the following exception in the logs:
            {code:java}
            ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled taskERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled taskjava.lang.IllegalArgumentException: Illegal character in scheme name at index 0: 'https://api.int.telemetry.camunda.cloud/pings&#39; at java.net.URI.create(URI.java:852) at org.apache.http.client.methods.HttpPost.<init>(HttpPost.java:73) at org.camunda.optimize.service.telemetry.TelemetrySendingService.sendTelemetryData(TelemetrySendingService.java:44) at org.camunda.optimize.service.telemetry.TelemetryScheduler.run(TelemetryScheduler.java:47) at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:93) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)Caused by: java.net.URISyntaxException: Illegal character in scheme name at index 0: 'https://api.int.telemetry.camunda.cloud/pings&#39; at java.net.URI$Parser.fail(URI.java:2848) at java.net.URI$Parser.checkChars(URI.java:3021) at java.net.URI$Parser.checkChar(URI.java:3031) at java.net.URI$Parser.parse(URI.java:3047) at java.net.URI.<init>(URI.java:588) at java.net.URI.create(URI.java:850) ... 12 common frames omitted
            {code}
            We should investigate the cause of failure (probably a missing license) and handle it more gracefully, i.e. by not sending telemetry data until a license is stored.

            *ATs:*
             * Optimize does not send telemetry data if no valid license is stored
            New: When Optimize is started, the telemetry URL is resolved as the environment variable or the placeholder. However, the placeholder is causing an error in it's formatting when its used
            {code:java}
            ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled taskERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled taskjava.lang.IllegalArgumentException: Illegal character in scheme name at index 0: 'https://api.int.telemetry.camunda.cloud/pings&#39; at java.net.URI.create(URI.java:852) at org.apache.http.client.methods.HttpPost.<init>(HttpPost.java:73) at org.camunda.optimize.service.telemetry.TelemetrySendingService.sendTelemetryData(TelemetrySendingService.java:44) at org.camunda.optimize.service.telemetry.TelemetryScheduler.run(TelemetryScheduler.java:47) at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:93) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)Caused by: java.net.URISyntaxException: Illegal character in scheme name at index 0: 'https://api.int.telemetry.camunda.cloud/pings&#39; at java.net.URI$Parser.fail(URI.java:2848) at java.net.URI$Parser.checkChars(URI.java:3021) at java.net.URI$Parser.checkChar(URI.java:3031) at java.net.URI$Parser.parse(URI.java:3047) at java.net.URI.<init>(URI.java:588) at java.net.URI.create(URI.java:850) ... 12 common frames omitted
            {code}
            We should investigate the cause of failure (probably a missing license) and handle it more gracefully.
            Summary Original: Handle telemetry sending fails on missing license New: Handle telemetry failing to resolve placeholder URL
            Joshua Windels made changes -
            Mentioned Roles
            Joshua Windels made changes -
            Mentioned Groups
            Joshua Windels made changes -
            Labels Original: next_release New: current_release
            Priority Original: L3 - Default [ 4 ] New: L2 - Critical [ 2 ]
            Joshua Windels made changes -
            Status Original: In Specification [ 10000 ] New: In Development [ 10312 ]
            Joshua Windels made changes -
            Assignee Original: Joshua Windels [ joshua.windels ] New: Sebastian Bathke [ sebastian.bathke ]
            Status Original: In Development [ 10312 ] New: In Review [ 10212 ]
            Sebastian Bathke made changes -
            Assignee Original: Sebastian Bathke [ sebastian.bathke ]
            Resolution New: Done [ 10000 ]
            Status Original: In Review [ 10212 ] New: Done [ 10010 ]
            Helene Waechtler made changes -
            Fix Version/s New: 3.2.0 [ 16198 ]

              Unassigned Unassigned
              joshua.windels Joshua Windels
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: