Textparametrar för arbetsbok
Textruteparametrar är ett enkelt sätt att samla in textindata från arbetsboksanvändare. De används när det inte är praktiskt att använda en listruta för att samla in indata, till exempel med ett godtyckligt tröskelvärde eller allmänna filter. Med hjälp av en arbetsbok kan du hämta standardvärdet för textrutan från en fråga. Den här funktionen möjliggör intressanta scenarier som att ange standardtröskelvärdet baserat på måttets p95.
En vanlig användning av textrutor är som interna variabler som används av andra arbetsbokskontroller. Du använder en fråga för standardvärden och gör indatakontrollen osynlig i läsläge. Du kanske till exempel vill att ett tröskelvärde ska komma från en formel, inte en användare, och sedan använda tröskelvärdet i efterföljande frågor.
Skapa en textparameter
Börja med en tom arbetsbok i redigeringsläge.
Välj Lägg till parametrar>Lägg till parameter.
I det nya parameterfönstret som öppnas anger du:
- Parameternamn:
SlowRequestThreshold
- Parametertyp:
Text
- Krävs:
checked
- Hämta data från:
None
- Parameternamn:
Välj Spara för att skapa parametern.
Den här skärmbilden visar hur arbetsboken ser ut i läsläge:
Fältformat för parameter
Textparametern stöder följande fältformat:
Standard: Ett textfält med en rad.
Lösenord: Ett lösenordsfält med en rad. Lösenordsvärdet döljs bara i användargränssnittet när du skriver. Värdet är fullt tillgängligt som ett parametervärde när det refereras. Den lagras okrypterad när arbetsboken sparas.
Flerrad: Ett flerradstextfält med stöd för rich IntelliSense och syntaxfärgning för följande språk:
- Text
- Markdown
- JSON
- SQL
- TypeScript
- KQL
- TOML
Du kan också ange höjden för redigeringsprogrammet för flera linjer.
Referera till en textparameter
Välj Lägg till fråga för att lägga till en frågekontroll och välj sedan en Application Insights-resurs.
Lägg till det här kodfragmentet i KQL-rutan:
requests | summarize AllRequests = count(), SlowRequests = countif(duration >= {SlowRequestThreshold}) by name | extend SlowRequestPercent = 100.0 * SlowRequests / AllRequests | order by SlowRequests desc
Genom att använda textparametern med värdet 500 tillsammans med frågekontrollen kör du i praktiken följande fråga:
requests | summarize AllRequests = count(), SlowRequests = countif(duration >= 500) by name | extend SlowRequestPercent = 100.0 * SlowRequests / AllRequests | order by SlowRequests desc
Kör frågan för att se resultatet.
Kommentar
I föregående exempel {SlowRequestThreshold}
representerar ett heltalsvärde. Om du frågar efter en sträng som {ComputerName}
, skulle du behöva ändra Kusto-frågan för att lägga till citattecken "{ComputerName}"
för att parameterfältet ska acceptera indata utan citattecken.
Ange standardvärdena med hjälp av frågor
Börja med en tom arbetsbok i redigeringsläge.
Välj Lägg till parametrar>Lägg till parameter.
I det nya parameterfönstret som öppnas anger du:
- Parameternamn:
SlowRequestThreshold
- Parametertyp:
Text
- Krävs:
checked
- Hämta data från:
Query
- Parameternamn:
Lägg till det här kodfragmentet i KQL-rutan:
requests | summarize round(percentile(duration, 95), 2)
Den här frågan anger standardvärdet för textrutan till den 95:e percentilvaraktigheten för alla begäranden i appen.
Kör frågan för att se resultatet.
Välj Spara för att skapa parametern.
Kommentar
Även om det här exemplet frågar Application Insights-data kan metoden användas för alla loggbaserade datakällor, till exempel Log Analytics och Azure Resource Graph.
Lägga till valideringar
För standard- och lösenordstextparametrar kan du lägga till valideringsregler som tillämpas på textfältet. Lägg till en giltig regex med ett felmeddelande. Om meddelandet har angetts visas det som ett fel när fältet är ogiltigt.
Om matchningen har valts är fältet giltigt om värdet matchar regex. Om matchningen inte är markerad är fältet giltigt om det inte matchar regexen.
Formatera JSON-data
Om JSON är valt som språk för flerradstextfältet har fältet en knapp som formaterar JSON-data i fältet. Du kan också använda genvägen Ctrl + \ för att formatera JSON-data.
Om data kommer från en fråga kan du välja alternativet att förformatera JSON-data som returneras av frågan.