Hi Team,
As per the latest SaaS release, the documentation says
Extended meta information on data objects in Grail
The dt.system.data_objects fetch command now includes a new field usable_with field in its output
fetch dt.system.data_objects
The usable_with field contains an array of DQL commands for which the data object can be used.
This is pretty exciting it helps keep track of what are the objects in DQL without having to second guess them. However when tried, it shows up sample queries which are pretty off..!!
I’ll keep trying different things available here, but this is a serious problem..!! Without Dynatrace MCP (even sometimes with it) all the LLMs already hallucinate DQL to be in this syntax, now if I use this data to train my LLM it would be worse.!
Thanks,
@Maheedhar_T
@Maheedhar_T here is how to interpret the information you are getting from fetch dt.system.data_objects:
- dt.entity.process_group is a view that queries data from the entities table (see query_string) [Note: The entities table is not directly accessible in DQL. Classic entities can only be queried via views such as dt.entity.process_group which filter on specific entity types.]
- dt.entity.process_group can be used with fetch and describe, e.g. fetch dt.entity.process_group
Hi @michael_krall ,
Thanks for the reply but my point is if I am running a MCP or a LLM agent, I’m really happy that I get to know all the objects that I can use and my LLM can use this as a bible to form DQL but if I do not remove query_string, it assumes that fetch entities | filter entity.type == “dt.entity.process_group” is a valid DQL which is obviously not. It’s just that we’re pointing it to a wrong direction.
I’ve been working with DQL for nearly 2.5 years now so I know classic entities can’t be queried this way but any LLM for that matter would not know that this is not a valid DQL and if someone is new to dynatrace, it’s pretty misleading for them as well.