varianttests.run_live
LiveRunner Objects
class LiveRunner()
prune_logging
def prune_logging(scenarios) -> None
De bewaartermijn, na afloop van de hele run.
Aan het eind appendt niets meer, dus deze DELETE kan met niemand botsen en niemand wacht erop. Hij wist alleen regels ouder dan de termijn: die van de vorige run blijven staan, want bij het uitzoeken van een rode uitslag zijn ze het eerste wat je nodig hebt.
dax_probe
def dax_probe(effective_user_name: str, model: str) -> int
Ask the notebook, as the service principal, to run DAX with impersonation.
The one thing documentation cannot answer: EffectiveUserName goes over
XMLA, and whether the suite's service principal may impersonate there is a
permission question about this tenant and this model. Reading DMVs already
works from a notebook (DAG_Tabular does it), but that is a different right.
De workspace gaat mee bij naam, want zo wil het XMLA-endpoint hem: de URL is
powerbi://api.powerbi.com/v1.0/myorg/<naam> en kent geen id. Precies daar
liep sempy op stuk. Het kreeg van ons een id en ging de bijbehorende naam
opzoeken via /v1.0/myorg/groups, vier keer 403 voor een service principal
(build 1419, 1428, 1435, 1441), zonder ooit XMLA te bereiken. De naam staat
in de configuratie, dus er valt niets op te zoeken.
Sinds build 1463 vraagt de probe ook naar het lidmaatschap van de rollen. Dat staat niet in de TMDL - getDefinition laat de members weg - maar de DMV's achter dezelfde XMLA-verbinding kennen ze wel. Of ze bij ons ook gevuld terugkomen is de vraag: er zijn meldingen van een lege TMSCHEMA_ROLE_MEMBERSHIPS terwijl de RLS gewoon werkt.
Deliberately not a scenario. It asserts nothing, touches no table and needs no reset; it prints what came back so a human can read it once and decide.