AzureLogger (logger)

De Wiki1000

Un logger Azure permet d'envoyer des messages dans une table Microsoft Azure

Paramètres communs :

Les loggers peuvent être paramétrés pour filter les évènements pris en compte :

Propriété Paramétrage Usage
content oui Contenu du message
contentFile non Le contenu du message est contenu dans un fichier
encodeType non Le format d'encodage du message
  • form
  • json
  • text
categories non Liste des catégories gérées par le logger
eventTypes non Liste des type d'évènements gérées par le logger
eventFilter non Une expression pour filter les évènements
openChar non Le caractère de début de substitution
closeChar non Le caractère de fin de substitution

Encodage du message

Si encodeType n'est pas défini la valeur peut être défini par le contentType :

ContentType EncodeType
application/json json
application/x-www-form-urlencoded form

La structure du message généré dépend du paramètres encodeType :

EncodeType Remarque Content Message
json [host],[port],[service] {"host":"hostname","port":443,"service":"GCF"}
json content commence par { {"hostName":[host],"httpPort":[port],"serviceName":[service]} {"hostName":"hostname","httpPort":443,"serviceName":"GCF"}
text Un message texte du service [service] sur le serveur [host].[port] Un message texte du servie GCF sur le serveur hostname.443
text (*) [jsonPerfs] {"status":"up","since":"xxxx", .....}
form [host][port][service] host=hostname&port=443&service=GCF
form content contient = hostName=[host]&httpPort=[port]&serviceName=[service] hostName=hostname&httpPort=443&serviceName=GCF

(*) jsonPerfs est une variable spéciale qui retourne une structure json de tous les compteurs de performances.

Paramètres du message

Les parammètres du message peuvent être définie ainsi:

  [nom]
  [nom:cible]
  [nom!default]
  [nom!default:cible]
  • nom
Nom du paramètre
  • cible
Nom du paramètre écrit dans le message
  • default
Valeur par défaut si le paramètre est absent.

Compteurs de performances

Les compteurs de performances peuvent être inclus soit individuellement comme les autres paramètres soit en blocs par des paramètres spéciaux :

Paramètre Contenu
jsonPers Tous les compteurs
jsonPerfStatus Tous les compteurs d'état
jsonPerfHits Tous les compteurs de taux

Ces paramètres retourne une structure json sous la forme {p1:v1,....pn:vn}

suivant le type d'encodage :

encodeType content message
text [jsonPerfs] {p1:v1,....pn:vn}
json [P],[jsonPerfs:perfs] {P:V,perfs:{p1;v1,...pn;vn}}
json [P],[@jsonPerfs] {P:V,p1;v1,...pn;vn}

Le préfix @ devant le paramètre permet d'inclure la structure


Exemple :

[\SOFTWARE\Sage\Ligne 1000\Administration\LOGManager\ES_EVENTS]
type = http
keep-alive = 1
url = http://elastic_hostname0/sage1000-[DayStamp]/event/[id]?timestamp=[timestamp]
method = PUT
contentType = application/json
accept = application/json
categories=service,automate,bp,authenticate,hit
eventTypes=audit_success,audit_failure
content = [NodeId],[timestamp],[host],[port],[service],[ResourceGroupName],[Message],[EventType],[Category],[TenantID],[OrganizationName],[UserName],[auditAction]

Dans cet exemple le logger ne prend en compte que les évènements des catégories service, automate, business process, et page hit et que les évènements de type audit_success et ausit_failure.

Paramètres spécifiques :

Propriété Paramétrage Usage
type non azure
accountName non Compte de stockage Azure
accountKey non Clé du compte de stockage
tableName oui Nom de la table Azure cible
Tip-20px.png Tip : Le contenu doit toujours contenir [PartitionKey] et [RowID] et est toujours formaté en json

Exemple :

Log des exceptions:

[\SOFTWARE\Sage\Ligne 1000\Administration\LOGManager\EXCEPTION]
type = azure
accountName=sagefrp1000
accountKey=tbZhiOmspf0dXHp6tSJ+fv5MTH0hqkZV1TGD5QM+Z/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tableName=exception-[DayStamp][nodeID]
categories=exception
content = [PartitionKey][RowKey],[host],[port],[service],[level],[TenantID],[OrganizationName]

Journal d'audit:

[\SOFTWARE\Sage\Ligne 1000\Administration\LOGManager\AUDIT]
type = azure
accountName=sagefrp1000
accountKey=4JU5mMdlbSwUI+Wp6nVuwhWH76Vnx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tableName=audit-[DayStamp][nodeID]
eventTypes=audit_success,audit_failure
content=[PartitionKey][RowKey][TimeStamp][userName][UserID][RemoteIP][auditAction][Message]




Whos here now:   Members 0   Guests 0   Bots & Crawlers 1
 
Outils personnels