Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • 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
languagejs
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
languagejs
AD_LOGDB.Init("AD_LOG", "toolbar").then( () => {
  // DB successfully opened
});

...

addData(<module_name>, <text>)
Code Block
languagejs
AD_LOGDB.addData("SINGLE SIGN ON", "User logged in successfully");

...

getSize()
Code Block
languagejs
AD_LOGDB.getSize().then( (size) => { } );

...

getCount()
Code Block
languagejs
AD_LOGDB.getCount().then( (count) => { } );

Viene restituito il numero di record presenti nella tabella.

clearTable()
Code Block
languagejs
 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()
AD_
Code Block
language
js
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
languagejs
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()
AD_
Code Block
languagejs
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()
AD_
Code Block
languagejs
LOGDB.getFirstRecord().then( (first) => { } );

Restituisce il primo record (loggata più vecchia) della tabella.

getLastRecord()
AD_
Code Block
language
js
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

image-20240318-100003.pngImage Added