Native calls of Invantive products to their data sources - the request sent and the response received, with their timing and the context of the session - and calls made into them, logged when the connection attribute log-native-calls-to-disk, log-native-calls-to-disk-on-error or log-native-calls-to-disk-on-success is set. One file per day, process, pool identity, data container, partition and table. A record holds the request and the response in full, so a file may hold credentials and personal data.
The files are named `native-{date}-{iiid}-{poolidentityid}-{datacontaineralias}-{partitioncode}-{datacontainerid}-{table}.ndjson`, where a field in braces is filled per process and per file.
Read the files as a table with Invantive UniversalSQL through the Big Data JSON driver, for instance with the connection string:
```
provider=BigDataJson;swagger-specification-files={specification};directories={directory};extension=*.ndjson;recurse-directories=true
```
## Columns
The columns of the table `NativeCalls` are shown below with the OpenAPI type of each, whether the value may be absent, and what it holds.
| Name | Label | Type | Nullable | Description | Example |
| --- | --- | --- | --- | --- | --- |
| `MetadataType` | Metadata Type | `string` | ☑ | Full name of the .NET type of the record, Invantive.Data.NativeCallEvent, which tells a reader of a mixed stream what shape the line has. | `Invantive.Data.NativeCallEvent` |
| `Url` | Url | `string` | ☑ | URL of the request to the data source, or of the request received. | |
| `Success` | Success | `boolean` | ☐ | Whether the call succeeded. | `true` |
| `CallDirection` | Call Direction | `integer / int32 (enumeration)` | ☐ | Direction of the call: from Invantive to the data source, or into Invantive from a caller. An enumeration (Invantive.Data.CallDirection) written as the ordinal of its member. Members: Inbound = 0: Into Invantive, from a caller.; Outbound = 1: From Invantive to the data source.. | |
| `Id` | Id | `integer / int64` | ☐ | Sequence number of the event within the process, incremented per call. | |
| `DateRegisteredUtc` | Date Registered Utc | `string / date-time` | ☐ | Moment the event was registered, in UTC. ISO 8601 date and time; a moment in UTC carries the suffix Z. | |
| `SqlExecutionStep` | Sql Execution Step | `object` | ☑ | The SQL execution step the call was made for, as a nested object, when known. A nested object of the .NET type Invantive.Basics.SqlExecutionStep, written as JSON. | |
| `RequestBodyAsString` | Request Body As String | `string` | ☐ | Body of the request, as text. | |
| `ResponseBodyAsString` | Response Body As String | `string` | ☐ | Body of the response, as text. | |
| `StartUtc` | Start Utc | `string / date-time` | ☐ | Start of the native call, in UTC. ISO 8601 date and time; a moment in UTC carries the suffix Z. | `2026-09-22T10:15:30.1234567Z` |
| `EndUtc` | End Utc | `string / date-time` | ☑ | End of the native call, in UTC; absent when the call had not ended when the event was registered. ISO 8601 date and time; a moment in UTC carries the suffix Z. | |
| `TableFullQualifiedName` | Table Full Qualified Name | `string` | ☑ | Full qualified name of the table the call was made for, when made for one. | |
| `MachineNameFull` | Machine Name Full | `string` | ☐ | Full name of the machine the process runs on. | |
| `UserLogonCodeWithDomain` | User Logon Code With Domain | `string` | ☐ | Log-on code of the operating system user of the process, with its domain. | |
| `ManagedThreadId` | Managed Thread Id | `integer / int32` | ☑ | Identifier of the managed .NET thread which made the call. | |
| `TaskId` | Task Id | `integer / int32` | ☑ | Identifier of the .NET task which made the call, when made from within a task. | |
| `ProcessId` | Process Id | `integer / int64` | ☑ | Operating system process identifier. | |
| `Uid` | Uid | `string / uuid` | ☐ | Unique identifier of the record. | `3f2504e0-4f89-11d3-9a0c-0305e82c3301` |
| `GuiAction` | Gui Action | `string` | ☑ | Action of the user interface being executed when the call was made. | |
| `GuiExternalIpAddress` | Gui External Ip Address | `string` | ☑ | External IP address of the user interface. An IP address as text, in IPv6 notation. | |
| `GuiExternalIpV6Port` | Gui External Ip V6 Port | `integer / int32` | ☑ | External port of the user interface. | |
| `GuiLanguage` | Gui Language | `string` | ☑ | Language of the user interface, as a culture code. | `en-GB` |
| `GuiModuleName` | Gui Module Name | `string` | ☑ | Name of the module of the user interface. | |
| `GuiModuleVersion` | Gui Module Version | `string` | ☑ | Version of the module of the user interface. | |
| `GuiOsUser` | Gui Os User | `string` | ☑ | Operating system user of the user interface. | |
| `GuiUser` | Gui User | `string` | ☑ | User of the user interface, as logged on to the product. | |
| `MessageText` | Message Text | `string` | ☑ | Text of the message accompanying the event. | |
| `MessageCode` | Message Code | `string` | ☐ | Message code of the event: itgen followed by three letters naming the component and three digits, unique per place in the product where a call is logged. | `itgeneor774` |
| `CallUid` | Call Uid | `string / uuid` | ☑ | Unique identifier of the call as provided by the caller, when provided. | |
| `ResponseStatus` | Response Status | `string` | ☑ | Status of the response, such as the HTTP status code and reason. | `200 OK` |
| `TableNameOverrule` | Table Name Overrule | `string` | ☑ | Name of the table as overruled by the caller, when overruled. | |
| `PartitionCode` | Partition Code | `string` | ☑ | Code of the partition - the company, division or administration within the data source - the call was made for. | |
| `DataContainerId` | Data Container Id | `string` | ☑ | Identifier of the data container - the connection to the data source - the call was made through. | |
| `Parameters` | Parameters | `array` | ☑ | Parameters of the call and their values, as a nested object. | |
| `UserLogOnCode` | User Log On Code | `string` | ☑ | Log-on code of the user at the data source. | |
| `AdditionalContext` | Additional Context | `string` | ☑ | Additional context the driver attached to the event. | |
| `RemoteCorrelationIds` | Remote Correlation Ids | `string` | ☑ | Correlation identifiers received from the remote system. | |
| `RequestContents` | Request Contents | `string` | ☑ | Contents of the native request as sent, such as the SQL or the XML. | |
| `ResponseContents` | Response Contents | `string` | ☑ | Contents of the native response as received. | |
| `RequestHttpHeaders` | Request Http Headers | `string` | ☑ | HTTP headers of the request, as text. | |
| `ResponseHttpHeaders` | Response Http Headers | `string` | ☑ | HTTP headers of the response, as text. | |
| `PoolIdentityId` | Pool Identity Id | `string` | ☑ | Identifier of the pool identity: the identity a pooled process or connection works under. | |
| `ExecutableName` | Executable Name | `string` | ☑ | Name of the executable of the process. | |
| `UserName` | User Name | `string` | ☑ | Operating system user of the process. | |
| `ExceptionMessageCode` | Exception Message Code | `string` | ☑ | Message code of the exception, when the call failed. | |
| `ExceptionMessage` | Exception Message | `string` | ☑ | Message text of the exception, when the call failed. | |
| `ExceptionNaturalKey` | Exception Natural Key | `string` | ☑ | Natural key of the exception, when the call failed. | |
| `ExceptionData` | Exception Data | `string` | ☑ | Data of the exception - its key-value pairs - as text, when the call failed. | |
| `ExceptionCallstack` | Exception Callstack | `string` | ☑ | Call stack of the exception, when the call failed. | |
## Specification
The OpenAPI specification is published as `Invantive.Data.NativeCallEvent.swagger.json` beside this page and is written by every product into the folder of the files themselves, named after the record type and the product version. It is the file a connection string of the Big Data JSON driver points at.
```json
{
"openapi": "3.0.3",
"info": {
"title": "Invantive Native Call Logging",
"version": "26.1",
"description": "Native calls of Invantive products to their data sources - the request sent and the response received, with their timing and the context of the session - and calls made into them, logged when the connection attribute log-native-calls-to-disk, log-native-calls-to-disk-on-error or log-native-calls-to-disk-on-success is set. One file per day, process, pool identity, data container, partition and table. A record holds the request and the response in full, so a file may hold credentials and personal data.\n\nEvery line of a file is one JSON object: a record of the .NET type Invantive.Data.NativeCallEvent of assembly Invantive.Data.Interfaces version 26.1.88.0 (NDJSON, newline-delimited JSON, see https://github.com/ndjson/ndjson-spec), written by System.Text.Json.\n\nA property whose value is null is left out of the line, so no property is required and a reader takes an absent property as null.\n\nThe files are named native-{date}-{iiid}-{poolidentityid}-{datacontaineralias}-{partitioncode}-{datacontainerid}-{table}.ndjson, where a field in braces is filled per process and per file.\n\nRead the files as a table with Invantive UniversalSQL through the Big Data JSON driver, for instance with the connection string: provider=BigDataJson;swagger-specification-files={specification};directories={directory};extension=*.ndjson;recurse-directories=true\n\nGenerated at run time from the metadata of the type by Invantive.Basics.NdjsonOpenApiGenerator and written again whenever the assembly changes, so a property added to the type is in this specification without any other step.",
"contact": {
"name": "Invantive B.V.",
"email": "
[email protected]",
"url": "https://invantive.eu"
},
"x-invantive-generator": "Invantive.Basics.NdjsonOpenApiGenerator",
"x-invantive-record-type": "Invantive.Data.NativeCallEvent",
"x-invantive-assembly": "Invantive.Data.Interfaces",
"x-invantive-assembly-version": "26.1.88.0",
"x-invantive-assembly-mvid": "32cffa71-472b-4c43-a958-80e03e45ac6e",
"x-invantive-serializer": "System.Text.Json",
"x-invantive-content-type": "application/x-ndjson",
"x-invantive-nulls-omitted": true,
"x-invantive-file-name-mask": "native-{date}-{iiid}-{poolidentityid}-{datacontaineralias}-{partitioncode}-{datacontainerid}-{table}.ndjson",
"x-invantive-connection-string-example": "provider=BigDataJson;swagger-specification-files={specification};directories={directory};extension=*.ndjson;recurse-directories=true"
},
"tags": [
{
"name": "NativeCalls",
"description": "Records of the .NET type Invantive.Data.NativeCallEvent, read as the table NativeCalls.NativeCalls."
}
],
"paths": {
"/": {
"get": {
"tags": [
"NativeCalls"
],
"summary": "Gets all native call events",
"description": "Native calls of Invantive products to their data sources - the request sent and the response received, with their timing and the context of the session - and calls made into them, logged when the connection attribute log-native-calls-to-disk, log-native-calls-to-disk-on-error or log-native-calls-to-disk-on-success is set. One file per day, process, pool identity, data container, partition and table. A record holds the request and the response in full, so a file may hold credentials and personal data.",
"operationId": "NativeCalls",
"x-invantive-label-singular": "Native Call",
"x-invantive-label-plural": "Native Calls",
"parameters": [],
"responses": {
"200": {
"description": "Successful operation.",
"content": {
"application/x-ndjson": {
"schema": {
"$ref": "#/components/schemas/NativeCallEvent"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"NativeCallEvent": {
"type": "object",
"description": "A native call of an Invantive product to a data source, or a call made into it: the request, the response, the timing and the context of the session it was made in.",
"x-invantive-record-type": "Invantive.Data.NativeCallEvent",
"items": {
"type": "object",
"properties": {
"MetadataType": {
"type": "string",
"title": "Metadata Type",
"description": "Full name of the .NET type of the record, Invantive.Data.NativeCallEvent, which tells a reader of a mixed stream what shape the line has.",
"example": "Invantive.Data.NativeCallEvent",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "MetadataType"
},
"Url": {
"type": "string",
"title": "Url",
"description": "URL of the request to the data source, or of the request received.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "Url"
},
"Success": {
"type": "boolean",
"title": "Success",
"description": "Whether the call succeeded.",
"example": true,
"x-invantive-clr-type": "System.Boolean",
"x-invantive-clr-property": "Success"
},
"CallDirection": {
"type": "integer",
"format": "int32",
"enum": [
0,
1
],
"x-enum-varnames": [
"Inbound",
"Outbound"
],
"title": "Call Direction",
"description": "Direction of the call: from Invantive to the data source, or into Invantive from a caller. An enumeration (Invantive.Data.CallDirection) written as the ordinal of its member. Members: Inbound = 0: Into Invantive, from a caller.; Outbound = 1: From Invantive to the data source..",
"x-invantive-clr-type": "Invantive.Data.CallDirection",
"x-invantive-clr-property": "CallDirection"
},
"Id": {
"type": "integer",
"format": "int64",
"title": "Id",
"description": "Sequence number of the event within the process, incremented per call.",
"x-invantive-clr-type": "System.Int64",
"x-invantive-clr-property": "Id"
},
"DateRegisteredUtc": {
"type": "string",
"format": "date-time",
"title": "Date Registered Utc",
"description": "Moment the event was registered, in UTC. ISO 8601 date and time; a moment in UTC carries the suffix Z.",
"x-invantive-clr-type": "System.DateTime",
"x-invantive-clr-property": "DateRegisteredUtc"
},
"SqlExecutionStep": {
"type": "object",
"title": "Sql Execution Step",
"description": "The SQL execution step the call was made for, as a nested object, when known. A nested object of the .NET type Invantive.Basics.SqlExecutionStep, written as JSON.",
"nullable": true,
"x-invantive-clr-type": "Invantive.Basics.SqlExecutionStep",
"x-invantive-clr-property": "SqlExecutionStep"
},
"RequestBodyAsString": {
"type": "string",
"title": "Request Body As String",
"description": "Body of the request, as text.",
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "RequestBodyAsString"
},
"ResponseBodyAsString": {
"type": "string",
"title": "Response Body As String",
"description": "Body of the response, as text.",
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ResponseBodyAsString"
},
"StartUtc": {
"type": "string",
"format": "date-time",
"title": "Start Utc",
"description": "Start of the native call, in UTC. ISO 8601 date and time; a moment in UTC carries the suffix Z.",
"example": "2026-09-22T10:15:30.1234567Z",
"x-invantive-clr-type": "System.DateTime",
"x-invantive-clr-property": "StartUtc"
},
"EndUtc": {
"type": "string",
"format": "date-time",
"title": "End Utc",
"description": "End of the native call, in UTC; absent when the call had not ended when the event was registered. ISO 8601 date and time; a moment in UTC carries the suffix Z.",
"nullable": true,
"x-invantive-clr-type": "System.DateTime",
"x-invantive-clr-property": "EndUtc"
},
"TableFullQualifiedName": {
"type": "string",
"title": "Table Full Qualified Name",
"description": "Full qualified name of the table the call was made for, when made for one.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "TableFullQualifiedName"
},
"MachineNameFull": {
"type": "string",
"title": "Machine Name Full",
"description": "Full name of the machine the process runs on.",
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "MachineNameFull"
},
"UserLogonCodeWithDomain": {
"type": "string",
"title": "User Logon Code With Domain",
"description": "Log-on code of the operating system user of the process, with its domain.",
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "UserLogonCodeWithDomain"
},
"ManagedThreadId": {
"type": "integer",
"format": "int32",
"title": "Managed Thread Id",
"description": "Identifier of the managed .NET thread which made the call.",
"nullable": true,
"x-invantive-clr-type": "System.Int32",
"x-invantive-clr-property": "ManagedThreadId"
},
"TaskId": {
"type": "integer",
"format": "int32",
"title": "Task Id",
"description": "Identifier of the .NET task which made the call, when made from within a task.",
"nullable": true,
"x-invantive-clr-type": "System.Int32",
"x-invantive-clr-property": "TaskId"
},
"ProcessId": {
"type": "integer",
"format": "int64",
"title": "Process Id",
"description": "Operating system process identifier.",
"nullable": true,
"x-invantive-clr-type": "System.UInt32",
"x-invantive-clr-property": "ProcessId"
},
"Uid": {
"type": "string",
"format": "uuid",
"title": "Uid",
"description": "Unique identifier of the record.",
"example": "3f2504e0-4f89-11d3-9a0c-0305e82c3301",
"x-invantive-clr-type": "System.Guid",
"x-invantive-clr-property": "Uid"
},
"GuiAction": {
"type": "string",
"title": "Gui Action",
"description": "Action of the user interface being executed when the call was made.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "GuiAction"
},
"GuiExternalIpAddress": {
"type": "string",
"title": "Gui External Ip Address",
"description": "External IP address of the user interface. An IP address as text, in IPv6 notation.",
"nullable": true,
"x-invantive-clr-type": "System.Net.IPAddress",
"x-invantive-clr-property": "GuiExternalIpV6Address"
},
"GuiExternalIpV6Port": {
"type": "integer",
"format": "int32",
"title": "Gui External Ip V6 Port",
"description": "External port of the user interface.",
"nullable": true,
"x-invantive-clr-type": "System.UInt16",
"x-invantive-clr-property": "GuiExternalIpV6Port"
},
"GuiLanguage": {
"type": "string",
"title": "Gui Language",
"description": "Language of the user interface, as a culture code.",
"example": "en-GB",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "GuiLanguage"
},
"GuiModuleName": {
"type": "string",
"title": "Gui Module Name",
"description": "Name of the module of the user interface.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "GuiModuleName"
},
"GuiModuleVersion": {
"type": "string",
"title": "Gui Module Version",
"description": "Version of the module of the user interface.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "GuiModuleVersion"
},
"GuiOsUser": {
"type": "string",
"title": "Gui Os User",
"description": "Operating system user of the user interface.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "GuiOsUser"
},
"GuiUser": {
"type": "string",
"title": "Gui User",
"description": "User of the user interface, as logged on to the product.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "GuiUser"
},
"MessageText": {
"type": "string",
"title": "Message Text",
"description": "Text of the message accompanying the event.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "MessageText"
},
"MessageCode": {
"type": "string",
"title": "Message Code",
"description": "Message code of the event: itgen followed by three letters naming the component and three digits, unique per place in the product where a call is logged.",
"example": "itgeneor774",
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "MessageCode"
},
"CallUid": {
"type": "string",
"format": "uuid",
"title": "Call Uid",
"description": "Unique identifier of the call as provided by the caller, when provided.",
"nullable": true,
"x-invantive-clr-type": "System.Guid",
"x-invantive-clr-property": "CallUid"
},
"ResponseStatus": {
"type": "string",
"title": "Response Status",
"description": "Status of the response, such as the HTTP status code and reason.",
"example": "200 OK",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ResponseStatus"
},
"TableNameOverrule": {
"type": "string",
"title": "Table Name Overrule",
"description": "Name of the table as overruled by the caller, when overruled.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "TableNameOverrule"
},
"PartitionCode": {
"type": "string",
"title": "Partition Code",
"description": "Code of the partition - the company, division or administration within the data source - the call was made for.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "PartitionCode"
},
"DataContainerId": {
"type": "string",
"title": "Data Container Id",
"description": "Identifier of the data container - the connection to the data source - the call was made through.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "DataContainerId"
},
"Parameters": {
"type": "array",
"items": {
"type": "object"
},
"title": "Parameters",
"description": "Parameters of the call and their values, as a nested object.",
"nullable": true,
"x-invantive-clr-type": "Invantive.Data.ParameterList",
"x-invantive-clr-property": "Parameters"
},
"UserLogOnCode": {
"type": "string",
"title": "User Log On Code",
"description": "Log-on code of the user at the data source.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "UserLogOnCode"
},
"AdditionalContext": {
"type": "string",
"title": "Additional Context",
"description": "Additional context the driver attached to the event.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "AdditionalContext"
},
"RemoteCorrelationIds": {
"type": "string",
"title": "Remote Correlation Ids",
"description": "Correlation identifiers received from the remote system.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "RemoteCorrelationIds"
},
"RequestContents": {
"type": "string",
"title": "Request Contents",
"description": "Contents of the native request as sent, such as the SQL or the XML.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "RequestContents"
},
"ResponseContents": {
"type": "string",
"title": "Response Contents",
"description": "Contents of the native response as received.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ResponseContents"
},
"RequestHttpHeaders": {
"type": "string",
"title": "Request Http Headers",
"description": "HTTP headers of the request, as text.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "RequestHttpHeaders"
},
"ResponseHttpHeaders": {
"type": "string",
"title": "Response Http Headers",
"description": "HTTP headers of the response, as text.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ResponseHttpHeaders"
},
"PoolIdentityId": {
"type": "string",
"title": "Pool Identity Id",
"description": "Identifier of the pool identity: the identity a pooled process or connection works under.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "PoolIdentityId"
},
"ExecutableName": {
"type": "string",
"title": "Executable Name",
"description": "Name of the executable of the process.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ExecutableName"
},
"UserName": {
"type": "string",
"title": "User Name",
"description": "Operating system user of the process.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "UserName"
},
"ExceptionMessageCode": {
"type": "string",
"title": "Exception Message Code",
"description": "Message code of the exception, when the call failed.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ExceptionMessageCode"
},
"ExceptionMessage": {
"type": "string",
"title": "Exception Message",
"description": "Message text of the exception, when the call failed.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ExceptionMessage"
},
"ExceptionNaturalKey": {
"type": "string",
"title": "Exception Natural Key",
"description": "Natural key of the exception, when the call failed.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ExceptionNaturalKey"
},
"ExceptionData": {
"type": "string",
"title": "Exception Data",
"description": "Data of the exception - its key-value pairs - as text, when the call failed.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ExceptionData"
},
"ExceptionCallstack": {
"type": "string",
"title": "Exception Callstack",
"description": "Call stack of the exception, when the call failed.",
"nullable": true,
"x-invantive-clr-type": "System.String",
"x-invantive-clr-property": "ExceptionCallstack"
}
},
"required": []
}
}
}
}
}
```