Skip to main content

Hi guys!

 

We are developing a Power BI dashboard that relies on time series and sequences fetched from CDF using the Cognite Extractor. We have set up a deployment pipeline for our dashboards (Dev, Test, and Prod), where each environment in the PBI pipeline corresponds to data sources in the respective CDF tenant. I.e., our Dev dashboard reads data from our dev tenant in CDF, and so on.

 

We get this to work by configuring a Parameter in Power BI desktop with values that match our CDF tenants.Then we refer to these parameters when we define the data sources. Here is an example of how we use push-down filtering via OData queries from the Advanced Editor in Power Query:

Source = Cognite.Contents(cdf_env & "/Timeseries/?$filter=ExternalId eq 'our_special_external_id'", null),

The variable “cdf_env” evaluates by default to Dev, and we have configured the deployment pipeline such that this parameter updates automatically when we deploy from Dev to Test, and from Test to Prod.

 

But here is the problem. This only works in our Time Series queries. When we try to use the same logic in our Data Sources that point to CDF sequences we get errors. This means we have had to resort to hard-coding the CDF tenant in our data source connection in  Dev, and currently cannot deploy to Test and get the automatic CDF tenant correct. It will require a bunch of manual downloading of semantic models, updating the hard-coded env, and republishing to Test. This workflow will not work well.

 

So, is there something with the Cognite Connector that leads to this limitation? 

 

I appreciate all help and advice! :) 

Hi Anders,

To better help you out, we would need more information on this. Could you please provide:

  • The exact error messages you're seeing when trying to use the parameterized approach with Sequences
  • A sample of the query you're using for Sequences (similar to the Time Series example you provided)

Power BI often provides limited error information. Optionally, to get a better understanding of what's happening, we recommend using a tool like Fiddler to monitor the requests being sent from Power BI to CDF. This will allow us to see:

  • The exact URL and query parameters being sent to the OData service
  • The response returned by CDF

This information can help us identify whether the issue is with parameter substitution, query formation, or something else.


Thanks for the feedback! I will try to gather more debug information about this and update the thread.


Hi @Everton Colling 

Sorry for the late follow-up.

I have downloaded FiddlerCap (the only free option I think), but I am not sure how to use it to collect the information you need. Could you explain a bit more how I can collect what you need?

Thanks!

Anders


Hi @Anders Brakestad,

The tool we use is Fiddler Classic (https://www.telerik.com/fiddler/fiddler-classic). After installing it, you need to open it before opening Power BI, and then you should be able to track requests sent from your Power BI desktop application (see screenshot below):

What would be relevant to troubleshoot is the request URL (GET /odata/v1/…. in the image below) and the response body (JSON @odata…. in the image below) associated to failed requests (status different than 200).

 


Reply