v1.3.0
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
.sqlfiles). 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.
- Executing DQLs no longer requires the user to create a Run Configuration - each file will have its own context
-
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
aliasparameter. Added an intention to replacealiaswith
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: dqlproperty:{ "variableName": { "$type": "dql", "dql": "now() - 4h" } }If the
dqlproperty 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.