...
Memorizza quasi ogni tipo di valore per chiavi, con tipi di chiavi multipli.
Supporta transazioni per l'affidabilitàaffidabili.
Supporta query dell'intervallo delle chiavi, utilizzando chiavi primarie ed indici.
Può memorizzare volumi di dati molto più grandi rispetto a localStorage.
Non è dipendente da politiche di sicurezza legata al filesystem del sistema operativo o da eventuali azioni restrittive di un software antivirus.
...
Viene creata una nuova istanza della classe AD_INDEXED_DB.
Code Block | ||
---|---|---|
| ||
let AD_LOGDB = new AD_INDEXED_DB(); |
Si inizializza correttamente la istanza andando a specificare il nome del datanase e la tabella che si vuole creare.
Code Block | ||
---|---|---|
| ||
AD_LOGDB.Init("AD_LOG", "toolbar").then( () => {
// DB successfully opened
}); |
...
addData(<module_name>, <text>)
Code Block | ||
---|---|---|
| ||
AD_LOGDB.addData("SINGLE SIGN ON", "User logged in successfully"); |
...
getSize()
Code Block | ||
---|---|---|
| ||
AD_LOGDB.getSize().then( (size) => { } ); |
...
getCount()
Code Block | ||
---|---|---|
| ||
AD_LOGDB.getCount().then( (count) => { } ); |
Viene restituito il numero di record presenti nella tabella.
clearTable()
Code Block | ||
---|---|---|
| ||
AD_LOGDB.clearTable().then( () => {
// Table successfully cleared
}); |
Viene svuotata completamente la tabella predefinita da tutto il suo contenuto, compresi gli indici. La tabella non verrà rimossa dal database.
readAllData()
Code Block | |||
---|---|---|---|
| AD_
| ||
LOGDB.readAllData().then( (data) => { } ); |
Vengono restituiti tutti i record contenuti nella tabella nel formato Array. Ogni record item dell’array rappresenta una loggata.
Storicizzazione dei dati
...
E' possibile modificare il valore di storicizzazione mediante la API setRetentionDays
Code Block | ||
---|---|---|
| ||
AD_LOGDB.setRetentionDays(5); |
Al modificare del valore di retention verrà eseguito un controllo sulla tabella al fine di eliminare i vecchi record. Il controllo è eseguito andando a calcolare in primis la data tra il primo record (più vecchio) e l’ultimo record (più recente). Se la differenza in giorni supera il valore di retention allora verranno progressivamente cancellati i record più vecchi.
API di utilità generale
purgeOldRecords()
Code Block | ||
---|---|---|
| ||
LOGDB.purgeOldRecords(); |
Forza il controllo sulla storicizzazione dei log andando eventualmente a cancellare i record come con timeStamp più vecchio del numero massimo di giorni impostato.
getFirstRecord()
Code Block | ||
---|---|---|
| ||
LOGDB.getFirstRecord().then( (first) => { } ); |
Restituisce il primo record (loggata più vecchia) della tabella.
getLastRecord()
Code Block | |||
---|---|---|---|
| AD_
| ||
LOGDB.getLastRecord().then( (last) => { } ); |
Restituisce l’ultimo record (loggata più recente) della tabella.
Viewer/Pagina di utilità
In AgentDesktop è stata resa disponibile una single page di supporto che consente di aprire e visualizzare il database dei LOG.
La pagina è liberamente utilizzabile all’indirizzo: /AD/AD_IndexedDB.html