

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Connect a una fonte di ServiceNow dati
<a name="grafana-enterprise-servicenow-datasource"></a>

Questa è la fonte di ServiceNow dati utilizzata per connettersi alle ServiceNow istanze.

**Nota**  
Questa fonte di dati è solo per Grafana Enterprise. Per ulteriori informazioni, consulta [Gestisci l'accesso ai plugin Enterprise](upgrade-to-enterprise-plugins.md).  
Inoltre, nelle aree di lavoro che supportano la versione 9 o successiva, questa fonte di dati potrebbe richiedere l'installazione del plug-in appropriato. Per ulteriori informazioni, consulta [Estendi il tuo spazio di lavoro con i plugin](grafana-plugins.md).

## Funzionalità
<a name="features-1"></a>
+  Query 
  +  Interrogazioni Stat API 
  +  Tabella delle interrogazioni API 
    +  Incidenti, modifiche e qualsiasi altra tabella 
+  Avvisi 
+  Annotazioni (funzionalità beta) 
+  Variabili del modello 

## Configurazione
<a name="configuration-2"></a>

 Seleziona le fonti di dati nel pannello di sinistra di Grafana. 

 Seleziona Aggiungi origine dati: 

 Entra **servicenow** per trovare il plug-in della fonte di dati: 

 Inserisci ServiceNow l'URL: 

 Seleziona **Salva ed esegui test**. Dovresti vedere un messaggio verde con "ServiceNow Connessione OK». 

### Dashboard di esempio
<a name="example-dashboards"></a>

 Pre-made I dashboard sono inclusi nel plug-in e possono essere importati tramite la pagina di configurazione dell'origine dati, nella scheda dashboard. 

## Utilizzo
<a name="usage-2"></a>

 Esistono due modi per restituire i dati nell'editor di query. 
+  Tabella API 
+  API aggregata 

 Attualmente gli utenti possono scegliere tra l'interrogazione di tabelle predefinite, come le seguenti: 
+  Modifiche 
+  Incidenti 

 Oppure, a partire da`v1.4.0`, un API-driven elenco di tabelle e campi utilizzando l'opzione **Altro (tabella personalizzata)**. Questa opzione ti consentirà di interrogare i dati presenti in qualsiasi tabella disponibile per l'utente utilizzato per configurare l'origine ServiceNow dati. 

 L'opzione **Tabella personalizzata** dovrebbe supportare tutte le stesse funzionalità degli elenchi di tabelle predefiniti. 

### Interrogazioni TableAPI
<a name="tableapi-queries"></a>

 TableAPI restituisce dati adatti alla visualizzazione in un pannello tabellare. Consente una selezione ordinata di campi da visualizzare più opzioni di filtro. L'editor di query fornisce anche un campo per limitare il numero di righe restituite da una query. 

 Esempio di pannello di tabella che mostra i risultati della query precedente. 

#### Mostra
<a name="show"></a>

 La riga *Mostra* fornisce un selettore per la visualizzazione di un campo. È inoltre possibile specificare più campi. I campi verranno restituiti nell'ordine esatto specificato. 

#### Valori di visualizzazione
<a name="display-values"></a>

 Il flag *Visualizza valori* farà sì che la query restituisca valori intuitivi, o valori di visualizzazione, anziché valori numerici. 

 Ad esempio, verrebbe visualizzata solo una gravità pari a `1` senza questo flag. `1` Se il flag è abilitato, il valore visualizzato sarà`1 - High`. 

 Secondo la [documentazione dell'ServiceNow API](https://developer.servicenow.com/dev.do#!/reference/api/orlando/rest/c_TableAPI), ciò può avere un impatto negativo sulle prestazioni. 

**Nota**  
 [...] la specificazione del valore di visualizzazione può causare problemi di prestazioni poiché non viene letto direttamente dal database e potrebbe includere il riferimento ad altri campi e record. 

#### Filtri (generali)
<a name="filters-general"></a>

 La riga *Filtri* offre la possibilità di restringere le righe visualizzate in base a più criteri di campo e valore. 

 Tutti i filtri vengono combinati con un'operazione *AND* *o OR*. 

 I seguenti campi sono disponibili quando non si utilizza una tabella personalizzata (questo elenco verrà ampliato in futuro).

```
Active
Asset
Group
Assigned To
Escalation
Issue Number
Description
Priority
State
Type
Change Risk
Change State
Start Date
End Date
On Hold
```

 Quando si seleziona una tabella personalizzata, i campi vengono compilati automaticamente dall'API Service Now. 

##### Filtri di data
<a name="date-filters"></a>


|  Campo orario  |  Operatori  |  Valore  | 
| --- | --- | --- | 
|  Aperto a  |  A o prima di oggi Non oggi prima o prima dopo o dopo  |  timestamp JavaScript: gs.daysago (30)  | 
|  Attività dovuta  |   |   | 
|  Chiuso alle  |   |   | 
|  Data di scadenza  |   |   | 
|  Inizio previsto  |   |   | 
|  Orario di riapertura  |   |   | 
|  Risolto a  |   |   | 
|  Fine del lavoro  |   |   | 
|  Inizio del lavoro  |   |   | 
|  Ignora il tempo  |   |   | 

 Per ulteriori valori di data, vedere: https://developer.servicenow.com/app.do \#\! /api\_doc? v=newyork&id=r\_ SGSYS-dateGenerate \_S 

##### Operatori (generali, basati su stringhe)
<a name="operators-generalstring-based"></a>
+  Inizia con 
+  Termina con (Termina con) 
+  Piace 
+  Non mi piace 
+  Equals 
+  Not equals 
+  Is Empty (È vuoto) 

##### Operatori (basati sul tempo)
<a name="operators-time-based"></a>
+  Oggi 
+  Non oggi 
+  Prima 
+  In o prima 
+  Dopo 
+  In o dopo 

##### Valori
<a name="values"></a>

 La selezione del valore dipende dal tipo di filtro selezionato. 
+  I filtri booleani hanno delle opzioni True/False 
+  I filtri di testo consentiranno di digitare qualsiasi valore 
+  Escalation, Priority ha un set fisso di valori numerici 

#### Ordina per
<a name="sort-by"></a>

 La riga *Ordina* per offre la possibilità di restringere le righe visualizzate in base a più criteri di campo e valore. 

 Tutti i filtri sono combinati con un'operazione *AND*. Verrà aggiunto il supporto per altri operatori. 

#### Limite
<a name="limit"></a>

 È possibile specificare un limite di riga per evitare la restituzione di troppi dati. Il valore predefinito è 25. 

#### Campo orario
<a name="time-field"></a>

 `Time Field`Questo è ciò che trasforma i dati richiesti in una serie temporale. I dati gestiti come serie temporali significa che i valori nel «campo temporale» selezionato che non rientrano nell'intervallo temporale della dashboard o del pannello non verranno visualizzati. 

 Il campo orario predefinito utilizzato è «Aperto a», ma può essere modificato in qualsiasi campo disponibile che contenga un valore temporale. 

 Viene fornito un valore speciale «Ignora ora» per consentire i risultati «fino ad ora» e anche per consentire ai filtri di controllare quali dati vengono visualizzati. 

### Interrogazioni API aggregate (Stats)
<a name="aggregateapi-queries-stats"></a>

 L'AggregateAPI restituirà sempre le metriche, con le seguenti aggregazioni: avg, min, max, sum. Il filtraggio è disponibile anche per restringere le query. 

#### Mostra
<a name="show-1"></a>

 La riga *Mostra* fornisce un selettore per la visualizzazione di una metrica. È inoltre possibile specificare più metriche. 

#### Filtri (generali)
<a name="filters-general-1"></a>

 *I filtri* aggregati offrono la possibilità di restringere le metriche visualizzate in base a criteri di campo e valore, in modo simile all'opzione tabella. 

 Tutti i filtri sono combinati con un'operazione *AND*. Verrà aggiunto il supporto per altri operatori. 

 Le opzioni del filtro Stat sono le stesse di TableAPI. 

#### Aggregazione
<a name="aggregation"></a>

 Esistono quattro tipi di aggregazioni metriche, più un «conteggio»: 
+  Media 
+  Minimo 
+  Massimo 
+  Somma 
+  Conteggio: restituisce il «numero» di metriche restituite da una query 

##### Raggruppa per
<a name="group-by"></a>

 Questo selettore offre la possibilità di suddividere le metriche in aggregati minori. Il raggruppamento per «priorità» restituirebbe le metriche con un «tag» di priorità e i valori univoci separati. 

### Modellazione
<a name="templating-2"></a>

 Invece di codificare i nomi nelle query, puoi utilizzare delle variabili al loro posto. Le variabili vengono visualizzate come caselle di selezione a discesa nella parte superiore della dashboard. Puoi utilizzare queste caselle a discesa per modificare i dati visualizzati sulla dashboard. 

 Vedi l'esempio nella sezione **Query Variable** su come aggiungere una variabile di query e fai riferimento a quella con un valore Template. 

#### Variabile di query
<a name="query-variable"></a>

 Se aggiungi una variabile modello di questo tipo`Query`, puoi scrivere una query in grado di restituire elementi come nomi di categorie, nomi di chiavi o valori chiave visualizzati come una casella di selezione a discesa. 

 *Ad esempio, è possibile avere una variabile che contiene tutti i valori per `categories` specificando una query come questa nell'impostazione Query della variabile di modello.* 

 **Quando si sceglie l'impostazione **Query**, viene visualizzata una sezione **Filtro**, che consente di scegliere un **tipo** e un campo.** Attualmente, **Type** è limitato a Incidenti e Modifiche. Quando si seleziona un tipo, viene fornito un elenco di campi applicabili a quel tipo. Una volta selezionati un **tipo** e un **campo**, nella parte inferiore verrà visualizzata un'anteprima dei valori che mostra le opzioni disponibili per tale campo Type/Field. Questi valori verranno visualizzati in un elenco a discesa sulla Dashboard, che puoi utilizzare insieme a Templating per filtrare i dati nei pannelli della dashboard. 

 Ad esempio, se aggiungi una variabile denominata *categoria*, quindi seleziona Tipo = Incidenti e Campo = Categoria, vedrai un elenco di opzioni per Categoria. Se poi aggiungi un filtro a un pannello e selezioni Categoria è uguale a $ {category}, i dati del pannello mostreranno solo i dati per quella categoria selezionata dall'elenco a discesa della Dashboard. 

 Importa la dashboard **Incidenti per categoria per vedere** un esempio. 

#### Utilizzo delle variabili nelle interrogazioni
<a name="using-variables-in-queries"></a>

 Esistono due sintassi: 

 `$<varname>`Esempio con una variabile modello denominata`hostname`: 

 `[[varname]]`Esempio con una variabile modello denominata`hostname`: 

## Avviso
<a name="servicenow-alerting"></a>

 Sono supportati gli avvisi Grafana standard. Qualsiasi interrogazione definita in un pannello grafico può essere utilizzata per generare avvisi. 

 Di seguito sono riportati un esempio di interrogazione e di avviso. Questa query restituirà un grafico di tutti gli incidenti critici aperti ad alta priorità: 

 Questo avviso verrà avviato quando si verificano più di cinque incidenti critici ad alta priorità aperti: 

 Il test della regola di avviso mostrerà l'output della regola di avviso e la selezione della cronologia dello stato mostrerà la transizione dell'avviso da ok a pendente a avviso. 

 La visualizzazione del grafico mostrerà una linea verticale e l'icona a forma di cuore in alto diventerà arancione mentre l'avviso è in sospeso. 

 Una volta soddisfatti i criteri per gli avvisi, la regola diventa rossa.

 Nella vista grafica, apparirà la linea verticale rossa e l'icona a forma di cuore in alto diventerà rossa. 

### Scrittura di incidenti per gli avvisi
<a name="writing-incidents-for-alerts"></a>

 **Funzionalità beta** 
+  Configura un canale di notifica per la tua fonte di ServiceNow dati. 

 Questo configurerà un [canale di notifica Grafana](https://grafana.com/docs/grafana/latest/alerting/notifications/) che utilizza l'utente configurato per creare incidenti sull' ServiceNow istanza per questa fonte di dati. 

 Questa azione richiede che l'utente dell'origine ServiceNow dati disponga delle autorizzazioni per la scrittura degli incidenti. 

## Annotazioni
<a name="annotations-1"></a>

 Le annotazioni Grafana sono una **funzionalità beta** a partire da questa fonte `v1.4.0` di dati. Le annotazioni ti danno la possibilità di sovrapporre gli eventi ai grafici. 

 La query Annotations supporta le stesse opzioni dell'editor di query standard con alcune piccole differenze: 
+  È selezionabile solo una colonna «Mostra». È probabile che questo problema verrà risolto con future migliorie. 
+  Il campo orario è obbligatorio. 

## Domande frequenti
<a name="faq-1"></a>

### Cosa succede se non abbiamo il plugin ITSM Roles?
<a name="what-if-we-dont-have-the-itsm-roles-plugin"></a>

 **È necessario l'accesso dell'amministratore per eseguire le seguenti azioni** 

 Opzione 1: concedere le autorizzazioni di amministratore utente Grafana per consentire l'accesso a tutte le tabelle. 

 Opzione 2: crea un ruolo e applica gli ACL a tutte le tabelle a cui Grafana deve accedere.

 È necessario l'accesso come amministratore per eseguire le seguenti azioni.

1.  L'amministratore che ha effettuato l'accesso deve elevare l'accesso a security\_admin.

   1.  Nel riquadro di navigazione in alto a destra, scegli l'icona del profilo. L'icona del profilo ha un indicatore cursore a discesa. 

   1.  **Dall'elenco a discesa, scegli Elevate Roles.** 

   1.  Dalla modalità mostrata, seleziona la casella di controllo **security\_admin**.

   1.  Scegli OK. 

1. Crea un nuovo ruolo con la convenzione di denominazione che desideri.

   1.  Vai alla sezione dei ruoli nella barra di navigazione a sinistra Sicurezza del sistema => Utenti e gruppi => Ruoli 

   1.  Scegli **Nuovo** in alto.

   1.  Inserisci un nome per il ruolo e una descrizione pertinente. 

   1.  Seleziona **Invia**. 

1.  Crea un nuovo utente o modifica un utente esistente con i ruoli necessari. 

   1.  Il ruolo che crei nella Fase 2 

   1.  personalize\_dictionary 

   1.  personalizza le scelte 

   1.  cmdb\_read (questo garantirà l'accesso in lettura a tutte le tabelle cmdb) 

1.  Crea gli ACL delle tabelle per le tabelle e i campi richiesti. 

   1.  Create un ACL per la tabella sys\_db\_object. 

     1.  **Nella seconda colonna dell'intestazione di ricerca **Name**, immettete e premete Invio. **sys\_db\_object**** 

     1.  **Il risultato filtrato dovrebbe mostrare Tabella.** Scegli **Tabella** per accedere al record. 

     1.  Nella sezione della scheda, scegli **Controlli**.

     1.  Nella parte inferiore della pagina, assicurati che **Access Controls** sia la scheda selezionata. 

     1.  Scegliete **Nuovo** per creare un nuovo ACL. 

     1.  Modificate la selezione **dell'operazione** da leggere. 

     1.  Nella sezione **Ruolo richiesto** nella parte inferiore dello schermo, scegliete (doppio clic) **Inserisci nuova riga** e cercate il ruolo che avete creato. 

     1. Dopo aver selezionato il ruolo che hai creato, scegli il segno di spunta verde. 

     1.  Scegli **Invia** nella parte inferiore dello schermo per creare l'ACL, quindi scegli **Continua** quando appare la modalità modale. 

1.  Crea ACL per campi sys\_db\_object specifici. I seguenti passaggi devono essere ripetuti per ciascuno dei seguenti campi: Name, Label, Display Name e Extends table. 

   1.  Mentre siete ancora nella visualizzazione dei record della tabella per sys\_db\_object, selezionate la scheda **Colonne** nel gruppo di schede più vicino alla parte superiore dello schermo.

   1.  Individuate il nome del campo e selezionatelo. 

   1.  Nella sezione inferiore della scheda, scegli **Nuovo** nella scheda **Controlli di accesso**. 

   1.  Cambia l'operazione da leggere 

   1.  Scegli (doppio clic) il testo di inserimento di una riga nella tabella «Ruolo richiesto» in basso. 

   1.  Cerca il ruolo che hai creato e scegli il segno di spunta verde. 

   1.  Seleziona **Invia**. 

   1.  Assicurati di aver ripetuto questi passaggi per tutti i campi obbligatori: Nome, Etichetta, Nome visualizzato e Tabella delle estensioni. 

1.  Ripeti i passaggi dalla 4.1 su Change, Incident e qualsiasi altra tabella non CMDB che desideri interrogare da Grafana. Non ripetete i passaggi della versione 4.2; quel passaggio è richiesto solo per sys\_db\_object. 