Skip to content

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 11 Jan 10:56
· 189 commits to main since this release

Features

  • Major rework for the DQL execution

    • Executing DQLs no longer requires the user to create a Run Configuration - each file will have its own context
      stored in memory. The user can still create a run configuration to save settings inside IntelliJ project. If they
      do, the initial configuration for the file will be loaded from the correlated run configuration.
    • Adding a DQL toolbar at the top of each DQL file (similar to .sql files). The toolbar allows the user to set up
      the Dynatrace context used for the file (to run, verify & autocomplete the query). For injected DQL fragments, the
      gutter icon will be shown, allowing the user to execute the query. Both are optional and can be enabled/disabled
      in the plugin's settings.
    • The user can now show the executed DQL fragment and switch between the JSON and table mode to show the execution
      result.
    • Allowing the user to execute a smaller DQL fragment via text selection and nested DQL queries. In such cases
      a popup menu will be shown to the user allowing to select which part of the DQL file should be executed.
  • Autocompleting parameter values in all suitable places (for example, in nested expressions of different types)

  • Added autocompleting string quotes in suitable places

  • Adding support for scientific notation numbers in DQL (for example, 1.3e20)

  • Adding support for calculating the expressions data types for supported operators (if possible, for example: long +
    long)

  • Added support for fields named via the alias parameter. Added an intention to replace alias with
    assigned expression (=)

  • Replacing manual inspections with automatically generated based on the DQL JSON definition

  • Added support for known Dynatrace Dashboards variables ($variable) replacement for live Notebooks autocompletion
    and inspections

  • Adding support for replacing DQL variables with DQL query fragments (for example: now() - 4h). To limit the risk of
    code injections, the fragment must be explicitly set up using the object with the $type: dql property:

    {
      "variableName": {
        "$type": "dql",
        "dql": "now() - 4h"
      }
    }

    If the dql property is not a string, the whole object will be parsed as DQL object.

  • When the plugin encounters any issues during the DQL query verification or autocompletion (connecting to the Dynatrace
    tenant), an error balloon notification will be shown to the user containing the error details. Previously it was just
    silently ignored by printing the error in IntelliJ logs.