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": [] } } } } } ```