Difference between revisions of "DE4A Logs and error messages it2"
(new page) |
Hugo.berdon (talk | contribs) |
||
(25 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | + | == General structure == | |
+ | The log message follows the structure below: | ||
+ | [timestamp] [level] [message code] [logging participant ID] + Specific text message | ||
+ | Where: | ||
+ | |||
+ | * '''[timestamp]:''' when the log message is written. ISO 8601 format with UTC time, e.g. [2022-07-26T12:41:13.666Z] | ||
+ | |||
+ | * '''[level]:''' INFO, ERROR, WARN or DEBUG | ||
+ | |||
+ | * '''[message code]:''' 5-character string consisting of: | ||
+ | |||
+ | Component code (2 letters) + Level code (1 letter) + Template (2 digits) | ||
+ | |||
+ | * '''[Logging participant ID]:''' composed of: | ||
+ | |||
+ | Acronym of the participant's name + ‘-’ + Two-letter country code | ||
+ | |||
+ | * '''Specific text message:''' instance of the text message template that is referred to in the message code. In the case of messages logged by Data Evaluators and Data Owners (codes starting with DE and DO respectively), the text is preceded by [Use Case] that identifies the running use case. | ||
+ | |||
+ | |||
+ | |||
+ | Details of the above mentioned parts of the log message are included below the following examples. | ||
+ | |||
+ | Example of a log message (''response'' message, ''INFO'' level, by a ''DT''): | ||
+ | [2021-07-26T12:41:13.657Z] [INFO] [DTI07] [SGAD-ES] Evidence Response message received: ResponseExtractMultiEvidenceType - 2ecda60e-3824-4e92-a459-7c4a81258952 - iso6523-actorid-upis::9991:pt990000101 - iso6523-actorid-upis::9920:ess2833002e – (09754288-72b9-41d0-92b2-59f02506891c:<nowiki>urn:de4a-eu:CanonicalEvidenceType::HigherEducationDiploma:2.0</nowiki>, f0cbbb5f-45d6-4d1e-8be4-047c1ce2ae8b:DOE01) | ||
+ | Example of a log message (''response'' message ''ERROR'' level, by a ''DO''): | ||
+ | [2021-08-16T19:01:33.803Z] [ERROR] [DOE02] [MIZŠ-SI] [UC#1.1] Evidence not available yet (delayed) | ||
+ | ERROR level log messages should contain the same error code and text than the corresponding ErrorResponseItem within IEM response message: | ||
+ | {| class="wikitable" | ||
+ | !'''Log message''' | ||
+ | !'''IEM Response message''' | ||
+ | !'''Example''' | ||
+ | |- | ||
+ | |Message code | ||
+ | |ErrorResponseItem/Code | ||
+ | |DRE05 | ||
+ | |- | ||
+ | |Specific text | ||
+ | |ErrorResponseItem/Message | ||
+ | |Missing or invalid arguments at {service requested}: {missing arguments} | ||
+ | |} | ||
+ | |||
+ | === Logging components and their codes === | ||
+ | Specifies which component is logging the message. | ||
+ | {| class="wikitable" | ||
+ | !'''Logging component''' | ||
+ | !'''Component code''' | ||
+ | |- | ||
+ | |Data Requestor | ||
+ | |DR | ||
+ | |- | ||
+ | |Data Transferor | ||
+ | |DT | ||
+ | |- | ||
+ | |SSI Authority Agent | ||
+ | |AA | ||
+ | |- | ||
+ | |Data Evaluator | ||
+ | |DE | ||
+ | |- | ||
+ | |Data Owner | ||
+ | |DO | ||
+ | |} | ||
+ | |||
+ | === Message severity and level code === | ||
+ | Besides the severity of the message, the level determines where the messages SHOULD be sent. In Warning and Debug level messages, the “Specific text message” is freely defined. | ||
+ | {| class="wikitable" | ||
+ | !'''Level''' | ||
+ | !'''Level code''' | ||
+ | !'''Meaning''' | ||
+ | !'''Destination''' | ||
+ | |- | ||
+ | |INFO | ||
+ | |I | ||
+ | |To inform on an event relevant for the system | ||
+ | |Logs for collection | ||
+ | |||
+ | Kafka server | ||
+ | |- | ||
+ | |ERROR | ||
+ | |E | ||
+ | |To inform on an error that interrupt the proper functioning | ||
+ | |DE4A response messages | ||
+ | |||
+ | Logs for collection | ||
+ | |||
+ | Kafka server | ||
+ | |- | ||
+ | |WARN | ||
+ | |W | ||
+ | |To point out something unexpected that does not interrupt the functioning | ||
+ | |Internal logs (not to be collected) | ||
+ | |- | ||
+ | |DEBUG | ||
+ | |D | ||
+ | |To help diagnose issues | ||
+ | |Internal logs (not to be collected) | ||
+ | |} | ||
+ | |||
+ | === Logging participant ID === | ||
+ | Identifies the specific participant that is logging the message. It is compound of the following elements:<blockquote> | ||
+ | Acronym of the participant's name + ‘-’ + Two-letter country code’ | ||
+ | </blockquote>The acronym refers to the participant that has deployed and is operating the corresponding component. In the case of the Connector, this is a configurable property whose value is set by the operator of the Connector themselves. | ||
+ | |||
+ | The acronym values must be taken from the DE4A Wiki page [[Useful information on pilots and participants]]. | ||
+ | |||
+ | === Use case === | ||
+ | Specific text in messages logged by Data Evaluator and Data Owner components (log messages with codes starting by “DE” and “DO” respectively) should be preceded by [''Use Case''], which corresponds to the specific DE4A use case running by such components: | ||
+ | {| class="wikitable" | ||
+ | !'''Studying Abroad pilot''' | ||
+ | !'''Doing Business Abroad pilot''' | ||
+ | !'''Moving Abroad pilot''' | ||
+ | |- | ||
+ | |UC#1.1 | ||
+ | |UC#2.1 | ||
+ | |UC#3.1 | ||
+ | |- | ||
+ | |UC#1.2 | ||
+ | |UC#2.2 | ||
+ | |UC#3.2 | ||
+ | |- | ||
+ | |UC#1.3 | ||
+ | | | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | == Message catalogue == | ||
+ | |||
+ | === Data Requestor === | ||
+ | {| class="wikitable" | ||
+ | !'''Component''' | ||
+ | !'''Level''' | ||
+ | !'''Template''' | ||
+ | !'''Specific text message''' | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |01 | ||
+ | |Legacy IM Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri} | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |02 | ||
+ | |IM Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |03 | ||
+ | |USI Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |04 | ||
+ | |Subscription Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEventCatalogUri)}) | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |05 | ||
+ | |LU Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |06 | ||
+ | |Legacy IM Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri/ErrorCode} | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |07 | ||
+ | |Evidence Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri/ErrorCode)}) | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |08 | ||
+ | |Redirect User message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri} - {RedirectURL/ErrorCode} | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |09 | ||
+ | |Subscription Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEventCatalogUri/ErrorCode)}) | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |10 | ||
+ | |Event Notification message received: {MessageType} - {NotificationID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (NotificationItemID):(CanonicalEventCatalogUri):(EventID)}) | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |11 | ||
+ | |Querying SML: {ParticipantID} | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |12 | ||
+ | |Querying SMP: {ParticipantID} - {DocumentTypeID} - {ProcessID} | ||
+ | |- | ||
+ | |DR | ||
+ | |I | ||
+ | |13 | ||
+ | |Querying Central IAL: {query url} | ||
+ | |- | ||
+ | |DR | ||
+ | |E | ||
+ | |01 | ||
+ | |Connection error with {destination component}: {inherited error message} | ||
+ | |- | ||
+ | |DR | ||
+ | |E | ||
+ | |02 | ||
+ | |Error on response from {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |DR | ||
+ | |E | ||
+ | |03 | ||
+ | |Object conversion error in {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |DR | ||
+ | |E | ||
+ | |04 | ||
+ | |Error accessing/saving data on {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |DR | ||
+ | |E | ||
+ | |05 | ||
+ | |Missing or invalid arguments at {service requested}: {missing arguments} | ||
+ | |- | ||
+ | |DR | ||
+ | |E | ||
+ | |06 | ||
+ | |Service requested {REST service requested} to {destination component} not found | ||
+ | |- | ||
+ | |DR | ||
+ | |E | ||
+ | |07 | ||
+ | |Scheme validation failed for {MessageType}: {inherited error message} | ||
+ | |- | ||
+ | |DR | ||
+ | |E | ||
+ | |08 | ||
+ | |Error occurred on AS4 Gateway to {destination component}: {inherited error message} | ||
+ | |} | ||
+ | |||
+ | === Data Transferor === | ||
+ | {| class="wikitable" | ||
+ | !'''Component''' | ||
+ | !'''Level''' | ||
+ | !'''Template''' | ||
+ | !'''Specific text message''' | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |01 | ||
+ | |Legacy IM Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri} | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |02 | ||
+ | |IM Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |03 | ||
+ | |USI Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |04 | ||
+ | |Subscription Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEventCatalogUri)}) | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |05 | ||
+ | |LU Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |06 | ||
+ | |Legacy IM Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri/ErrorCode} | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |07 | ||
+ | |Evidence Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri/ErrorCode)}) | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |08 | ||
+ | |Redirect User message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri} - {RedirectURL/ErrorCode} | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |09 | ||
+ | |Subscription Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEventCatalogUri/ErrorCode)}) | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |10 | ||
+ | |Event Notification message received: {MessageType} - {NotificationID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (NotificationItemID):(CanonicalEventCatalogUri):(EventID)}) | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |11 | ||
+ | |Querying SML: {ParticipantID} | ||
+ | |- | ||
+ | |DT | ||
+ | |I | ||
+ | |12 | ||
+ | |Querying SMP: {ParticipantID} - {DocumentTypeID} - {ProcessID} | ||
+ | |- | ||
+ | |DT | ||
+ | |E | ||
+ | |01 | ||
+ | |Connection error with {destination component}: {inherited error message} | ||
+ | |- | ||
+ | |DT | ||
+ | |E | ||
+ | |02 | ||
+ | |Error on response from {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |DT | ||
+ | |E | ||
+ | |03 | ||
+ | |Object conversion error in {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |DT | ||
+ | |E | ||
+ | |04 | ||
+ | |Error accessing/saving data on {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |DT | ||
+ | |E | ||
+ | |05 | ||
+ | |Missing or invalid arguments at {service requested}: {missing arguments} | ||
+ | |- | ||
+ | |DT | ||
+ | |E | ||
+ | |06 | ||
+ | |Service requested {REST service requested} to {destination component} not found | ||
+ | |- | ||
+ | |DT | ||
+ | |E | ||
+ | |07 | ||
+ | |Scheme validation failed for {MessageType}: {inherited error message} | ||
+ | |- | ||
+ | |DT | ||
+ | |E | ||
+ | |08 | ||
+ | |Error occurred on AS4 Gateway to {destination component}: {inherited error message} | ||
+ | |} | ||
+ | |||
+ | === SSI Authority Agent === | ||
+ | {| class="wikitable" | ||
+ | !'''Component''' | ||
+ | !'''Level''' | ||
+ | !'''Template''' | ||
+ | !'''Specific text message''' | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |01 | ||
+ | |{APIMethod}: Received input eIDAS user data. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |02 | ||
+ | |{APIMethod}: Received input userId data. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |03 | ||
+ | |{APIMethod}: Generated DID invitation for edge agent with ID {UUID}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |04 | ||
+ | |{APIMethod}: Received input evidence data. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |05 | ||
+ | |{APIMethod}: Signed a Verifiable Credential. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |06 | ||
+ | |{APIMethod}: Sent Verifiable Credential {VC Id} to the edge agent under invitation {UUID} from {DO URI}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |07 | ||
+ | |{APIMethod}: Accepted a submitted Verifiable Presentation. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |08 | ||
+ | |{APIMethod}: Decoded input eIDAS user data. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |09 | ||
+ | |{APIMethod}: Validated the digital signature of the submitted VP. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |10 | ||
+ | |{APIMethod}: Validated the subject of the submitted VP. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |11 | ||
+ | |{APIMethod}: Received HTTP response code: {ResponseCode} from endpoint: {Endpoint}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |12 | ||
+ | |{APIMethod}: Processing the JSON response received from /{AriesAPIMethod}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |13 | ||
+ | |{APIMethod}: Stored current state in {Component} internal database. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |14 | ||
+ | |{APIMethod}: Received user {DataObject} status data. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |15 | ||
+ | |{APIMethod}: Converted input evidence in format: {Format} to format: {Format}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |16 | ||
+ | |{APIMethod}: Received response data PIID: {PIID}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |17 | ||
+ | |{APIMethod}: Found a {DataObject} action match with PIID: {PIID}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |18 | ||
+ | |{APIMethod}: Found a Verifiable Presentation with name: {VPName}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |19 | ||
+ | |{APIMethod}: Found a Verifiable Presentation with ID: {VPID}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |20 | ||
+ | |{APIMethod}: Received Verifiable Credential {VC Id} at the verifier {DE URI} under invitation {UUID} | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |21 | ||
+ | |{APIMethod}: Validated Verifiable Credential {VC Id} of type {CanonicalEvidenceTypeUri} under invitation {UUID} for {DE URI}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |22 | ||
+ | |{APIMethod}: Sent Offer for Verifiable Credential {VC Id} of type {CanonicalEvidenceTypeUri} under invitation {UUID} from {DO URI}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |23 | ||
+ | |{Component}: Issuer DID has already been generated and registered in EBSI. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |24 | ||
+ | |{Component}: Successfully created files for EBSI integration. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |25 | ||
+ | |{Component}: Successfully generated key: {KeyType}, value: {Value}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |26 | ||
+ | |{Component}: Successfully exported JWK private key. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |27 | ||
+ | |{Component}: Successfully imported DID document into Aries. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |28 | ||
+ | |{APIMethod}: Overwriting DID connection with ID {old invitation ID} to {new invitation ID} . | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |29 | ||
+ | |{APIMethod}: DID connection has been established for invitation ID {invitation ID}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |30 | ||
+ | |{APIMethod}: Validated the issuer of the submitted VP. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |31 | ||
+ | |{APIMethod}: Validated the schema of the submitted VP. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |32 | ||
+ | |{APIMethod}: Event notification of type ‘{event type}’ has been successfully sent to {frontend URI}. Received HTTP response code: {response code}. | ||
+ | |- | ||
+ | |AA | ||
+ | |I | ||
+ | |33 | ||
+ | |{Component}: Successfully anchored DID {did} for organization {organization alias} into the EBSI DID Registry. | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |01 | ||
+ | |Connection error with {destination component}: {inherited error message} | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |02 | ||
+ | |Error on response from {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |03 | ||
+ | |Object conversion error in {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |04 | ||
+ | |Error accessing/saving data on {error source component}: {inherited error message} | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |05 | ||
+ | |Missing or invalid arguments at {service requested}: {missing arguments} | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |06 | ||
+ | |Error generating {key} key. | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |07 | ||
+ | |Error exporting JWK private key. | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |08 | ||
+ | |Error importing DID document into Aries. | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |09 | ||
+ | |Configuration error occurred on {error source component} | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |10 | ||
+ | |Event notification of type ‘{event type}’ could not be sent: {inherited error message} | ||
+ | |- | ||
+ | |AA | ||
+ | |E | ||
+ | |11 | ||
+ | |Event notification of type ‘{event type}’ could not be sent: {inherited error message} | ||
+ | |} | ||
+ | |||
+ | === Data Evaluator === | ||
+ | {| class="wikitable" | ||
+ | !'''Component''' | ||
+ | !'''Level''' | ||
+ | !'''Template''' | ||
+ | !'''Specific text message''' | ||
+ | |- | ||
+ | |DE | ||
+ | |I | ||
+ | |01 | ||
+ | |[UseCase] DE4A pilot process started | ||
+ | |- | ||
+ | |DE | ||
+ | |I | ||
+ | |02 | ||
+ | |[UseCase] DE4A pilot process successfully finished | ||
+ | |- | ||
+ | |DE | ||
+ | |E | ||
+ | |03 | ||
+ | |[UseCase] Failed to establish user identity | ||
+ | |- | ||
+ | |DE | ||
+ | |E | ||
+ | |04 | ||
+ | |[UseCase] Preview rejected by the User | ||
+ | |} | ||
+ | |||
+ | === Data Owner === | ||
+ | {| class="wikitable" | ||
+ | !'''Component''' | ||
+ | !'''Level''' | ||
+ | !'''Template''' | ||
+ | !'''Specific text message''' | ||
+ | |- | ||
+ | |DO | ||
+ | |E | ||
+ | |01 | ||
+ | |[UseCase] Error extracting evidence/subscription | ||
+ | |- | ||
+ | |DO | ||
+ | |E | ||
+ | |02 | ||
+ | |[UseCase] Evidence/Subscription not available yet (delayed) | ||
+ | |- | ||
+ | |DO | ||
+ | |E | ||
+ | |03 | ||
+ | |[UseCase] Error in identity matching | ||
+ | |- | ||
+ | |DO | ||
+ | |E | ||
+ | |04 | ||
+ | |[UseCase] Unsuccessful completion of preview | ||
+ | |- | ||
+ | |DO | ||
+ | |E | ||
+ | |05 | ||
+ | |[UseCase] Failed to re-establish user identity | ||
+ | |- | ||
+ | |DO | ||
+ | |E | ||
+ | |06 | ||
+ | |[UseCase] Preview rejected by the User | ||
+ | |- | ||
+ | |DO | ||
+ | |E | ||
+ | |07 | ||
+ | |[UseCase] Unsuccessful generation of the canonical evidence/subscription | ||
+ | |- | ||
+ | |DO | ||
+ | |E | ||
+ | |08 | ||
+ | |Connection error with {destination component}: {inherited error message} | ||
+ | |} | ||
+ | [[Category:Wip]] |
Latest revision as of 12:09, 30 November 2022
General structure
The log message follows the structure below:
[timestamp] [level] [message code] [logging participant ID] + Specific text message
Where:
- [timestamp]: when the log message is written. ISO 8601 format with UTC time, e.g. [2022-07-26T12:41:13.666Z]
- [level]: INFO, ERROR, WARN or DEBUG
- [message code]: 5-character string consisting of:
Component code (2 letters) + Level code (1 letter) + Template (2 digits)
- [Logging participant ID]: composed of:
Acronym of the participant's name + ‘-’ + Two-letter country code
- Specific text message: instance of the text message template that is referred to in the message code. In the case of messages logged by Data Evaluators and Data Owners (codes starting with DE and DO respectively), the text is preceded by [Use Case] that identifies the running use case.
Details of the above mentioned parts of the log message are included below the following examples.
Example of a log message (response message, INFO level, by a DT):
[2021-07-26T12:41:13.657Z] [INFO] [DTI07] [SGAD-ES] Evidence Response message received: ResponseExtractMultiEvidenceType - 2ecda60e-3824-4e92-a459-7c4a81258952 - iso6523-actorid-upis::9991:pt990000101 - iso6523-actorid-upis::9920:ess2833002e – (09754288-72b9-41d0-92b2-59f02506891c:urn:de4a-eu:CanonicalEvidenceType::HigherEducationDiploma:2.0, f0cbbb5f-45d6-4d1e-8be4-047c1ce2ae8b:DOE01)
Example of a log message (response message ERROR level, by a DO):
[2021-08-16T19:01:33.803Z] [ERROR] [DOE02] [MIZŠ-SI] [UC#1.1] Evidence not available yet (delayed)
ERROR level log messages should contain the same error code and text than the corresponding ErrorResponseItem within IEM response message:
Log message | IEM Response message | Example |
---|---|---|
Message code | ErrorResponseItem/Code | DRE05 |
Specific text | ErrorResponseItem/Message | Missing or invalid arguments at {service requested}: {missing arguments} |
Logging components and their codes
Specifies which component is logging the message.
Logging component | Component code |
---|---|
Data Requestor | DR |
Data Transferor | DT |
SSI Authority Agent | AA |
Data Evaluator | DE |
Data Owner | DO |
Message severity and level code
Besides the severity of the message, the level determines where the messages SHOULD be sent. In Warning and Debug level messages, the “Specific text message” is freely defined.
Level | Level code | Meaning | Destination |
---|---|---|---|
INFO | I | To inform on an event relevant for the system | Logs for collection
Kafka server |
ERROR | E | To inform on an error that interrupt the proper functioning | DE4A response messages
Logs for collection Kafka server |
WARN | W | To point out something unexpected that does not interrupt the functioning | Internal logs (not to be collected) |
DEBUG | D | To help diagnose issues | Internal logs (not to be collected) |
Logging participant ID
Identifies the specific participant that is logging the message. It is compound of the following elements:
Acronym of the participant's name + ‘-’ + Two-letter country code’
The acronym refers to the participant that has deployed and is operating the corresponding component. In the case of the Connector, this is a configurable property whose value is set by the operator of the Connector themselves.
The acronym values must be taken from the DE4A Wiki page Useful information on pilots and participants.
Use case
Specific text in messages logged by Data Evaluator and Data Owner components (log messages with codes starting by “DE” and “DO” respectively) should be preceded by [Use Case], which corresponds to the specific DE4A use case running by such components:
Studying Abroad pilot | Doing Business Abroad pilot | Moving Abroad pilot |
---|---|---|
UC#1.1 | UC#2.1 | UC#3.1 |
UC#1.2 | UC#2.2 | UC#3.2 |
UC#1.3 |
Message catalogue
Data Requestor
Component | Level | Template | Specific text message |
---|---|---|---|
DR | I | 01 | Legacy IM Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri} |
DR | I | 02 | IM Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) |
DR | I | 03 | USI Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) |
DR | I | 04 | Subscription Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEventCatalogUri)}) |
DR | I | 05 | LU Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) |
DR | I | 06 | Legacy IM Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri/ErrorCode} |
DR | I | 07 | Evidence Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri/ErrorCode)}) |
DR | I | 08 | Redirect User message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri} - {RedirectURL/ErrorCode} |
DR | I | 09 | Subscription Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEventCatalogUri/ErrorCode)}) |
DR | I | 10 | Event Notification message received: {MessageType} - {NotificationID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (NotificationItemID):(CanonicalEventCatalogUri):(EventID)}) |
DR | I | 11 | Querying SML: {ParticipantID} |
DR | I | 12 | Querying SMP: {ParticipantID} - {DocumentTypeID} - {ProcessID} |
DR | I | 13 | Querying Central IAL: {query url} |
DR | E | 01 | Connection error with {destination component}: {inherited error message} |
DR | E | 02 | Error on response from {error source component}: {inherited error message} |
DR | E | 03 | Object conversion error in {error source component}: {inherited error message} |
DR | E | 04 | Error accessing/saving data on {error source component}: {inherited error message} |
DR | E | 05 | Missing or invalid arguments at {service requested}: {missing arguments} |
DR | E | 06 | Service requested {REST service requested} to {destination component} not found |
DR | E | 07 | Scheme validation failed for {MessageType}: {inherited error message} |
DR | E | 08 | Error occurred on AS4 Gateway to {destination component}: {inherited error message} |
Data Transferor
Component | Level | Template | Specific text message |
---|---|---|---|
DT | I | 01 | Legacy IM Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri} |
DT | I | 02 | IM Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) |
DT | I | 03 | USI Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) |
DT | I | 04 | Subscription Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEventCatalogUri)}) |
DT | I | 05 | LU Request message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri)}) |
DT | I | 06 | Legacy IM Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri/ErrorCode} |
DT | I | 07 | Evidence Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEvidenceTypeUri/ErrorCode)}) |
DT | I | 08 | Redirect User message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - {CanonicalEvidenceTypeUri} - {RedirectURL/ErrorCode} |
DT | I | 09 | Subscription Response message received: {MessageType} - {RequestID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (RequestItemID):(CanonicalEventCatalogUri/ErrorCode)}) |
DT | I | 10 | Event Notification message received: {MessageType} - {NotificationID} - {DataEvaluator (ParticipantID)} - {DataOwner (ParticipantID)} - ({list (NotificationItemID):(CanonicalEventCatalogUri):(EventID)}) |
DT | I | 11 | Querying SML: {ParticipantID} |
DT | I | 12 | Querying SMP: {ParticipantID} - {DocumentTypeID} - {ProcessID} |
DT | E | 01 | Connection error with {destination component}: {inherited error message} |
DT | E | 02 | Error on response from {error source component}: {inherited error message} |
DT | E | 03 | Object conversion error in {error source component}: {inherited error message} |
DT | E | 04 | Error accessing/saving data on {error source component}: {inherited error message} |
DT | E | 05 | Missing or invalid arguments at {service requested}: {missing arguments} |
DT | E | 06 | Service requested {REST service requested} to {destination component} not found |
DT | E | 07 | Scheme validation failed for {MessageType}: {inherited error message} |
DT | E | 08 | Error occurred on AS4 Gateway to {destination component}: {inherited error message} |
SSI Authority Agent
Component | Level | Template | Specific text message |
---|---|---|---|
AA | I | 01 | {APIMethod}: Received input eIDAS user data. |
AA | I | 02 | {APIMethod}: Received input userId data. |
AA | I | 03 | {APIMethod}: Generated DID invitation for edge agent with ID {UUID}. |
AA | I | 04 | {APIMethod}: Received input evidence data. |
AA | I | 05 | {APIMethod}: Signed a Verifiable Credential. |
AA | I | 06 | {APIMethod}: Sent Verifiable Credential {VC Id} to the edge agent under invitation {UUID} from {DO URI}. |
AA | I | 07 | {APIMethod}: Accepted a submitted Verifiable Presentation. |
AA | I | 08 | {APIMethod}: Decoded input eIDAS user data. |
AA | I | 09 | {APIMethod}: Validated the digital signature of the submitted VP. |
AA | I | 10 | {APIMethod}: Validated the subject of the submitted VP. |
AA | I | 11 | {APIMethod}: Received HTTP response code: {ResponseCode} from endpoint: {Endpoint}. |
AA | I | 12 | {APIMethod}: Processing the JSON response received from /{AriesAPIMethod}. |
AA | I | 13 | {APIMethod}: Stored current state in {Component} internal database. |
AA | I | 14 | {APIMethod}: Received user {DataObject} status data. |
AA | I | 15 | {APIMethod}: Converted input evidence in format: {Format} to format: {Format}. |
AA | I | 16 | {APIMethod}: Received response data PIID: {PIID}. |
AA | I | 17 | {APIMethod}: Found a {DataObject} action match with PIID: {PIID}. |
AA | I | 18 | {APIMethod}: Found a Verifiable Presentation with name: {VPName}. |
AA | I | 19 | {APIMethod}: Found a Verifiable Presentation with ID: {VPID}. |
AA | I | 20 | {APIMethod}: Received Verifiable Credential {VC Id} at the verifier {DE URI} under invitation {UUID} |
AA | I | 21 | {APIMethod}: Validated Verifiable Credential {VC Id} of type {CanonicalEvidenceTypeUri} under invitation {UUID} for {DE URI}. |
AA | I | 22 | {APIMethod}: Sent Offer for Verifiable Credential {VC Id} of type {CanonicalEvidenceTypeUri} under invitation {UUID} from {DO URI}. |
AA | I | 23 | {Component}: Issuer DID has already been generated and registered in EBSI. |
AA | I | 24 | {Component}: Successfully created files for EBSI integration. |
AA | I | 25 | {Component}: Successfully generated key: {KeyType}, value: {Value}. |
AA | I | 26 | {Component}: Successfully exported JWK private key. |
AA | I | 27 | {Component}: Successfully imported DID document into Aries. |
AA | I | 28 | {APIMethod}: Overwriting DID connection with ID {old invitation ID} to {new invitation ID} . |
AA | I | 29 | {APIMethod}: DID connection has been established for invitation ID {invitation ID}. |
AA | I | 30 | {APIMethod}: Validated the issuer of the submitted VP. |
AA | I | 31 | {APIMethod}: Validated the schema of the submitted VP. |
AA | I | 32 | {APIMethod}: Event notification of type ‘{event type}’ has been successfully sent to {frontend URI}. Received HTTP response code: {response code}. |
AA | I | 33 | {Component}: Successfully anchored DID {did} for organization {organization alias} into the EBSI DID Registry. |
AA | E | 01 | Connection error with {destination component}: {inherited error message} |
AA | E | 02 | Error on response from {error source component}: {inherited error message} |
AA | E | 03 | Object conversion error in {error source component}: {inherited error message} |
AA | E | 04 | Error accessing/saving data on {error source component}: {inherited error message} |
AA | E | 05 | Missing or invalid arguments at {service requested}: {missing arguments} |
AA | E | 06 | Error generating {key} key. |
AA | E | 07 | Error exporting JWK private key. |
AA | E | 08 | Error importing DID document into Aries. |
AA | E | 09 | Configuration error occurred on {error source component} |
AA | E | 10 | Event notification of type ‘{event type}’ could not be sent: {inherited error message} |
AA | E | 11 | Event notification of type ‘{event type}’ could not be sent: {inherited error message} |
Data Evaluator
Component | Level | Template | Specific text message |
---|---|---|---|
DE | I | 01 | [UseCase] DE4A pilot process started |
DE | I | 02 | [UseCase] DE4A pilot process successfully finished |
DE | E | 03 | [UseCase] Failed to establish user identity |
DE | E | 04 | [UseCase] Preview rejected by the User |
Data Owner
Component | Level | Template | Specific text message |
---|---|---|---|
DO | E | 01 | [UseCase] Error extracting evidence/subscription |
DO | E | 02 | [UseCase] Evidence/Subscription not available yet (delayed) |
DO | E | 03 | [UseCase] Error in identity matching |
DO | E | 04 | [UseCase] Unsuccessful completion of preview |
DO | E | 05 | [UseCase] Failed to re-establish user identity |
DO | E | 06 | [UseCase] Preview rejected by the User |
DO | E | 07 | [UseCase] Unsuccessful generation of the canonical evidence/subscription |
DO | E | 08 | Connection error with {destination component}: {inherited error message} |