CData Arc maintains logs for multiple types of activities: Messages, Transactions, Application requests, Access requests, and Audit configuration changes. Use the Activity page to view and work with your logs. Each log type has its own tab and is stored as a separate table in the application database. The Activity page is also where you can find details about the Service Level Agreements (SLAs) configured across the application, and their statuses.
Searching and Filtering the Logs
The top of each Activity page tab has a search bar that you can use to search all the logs on that page. It also has a context-sensitive filter section with different options for each log type. For example, the Messages tab has filters for time, connector type, workspace, status and Tracked Headers.
You can use filter options and the search bar in an individual search to narrow the results that are returned. The image below shows Application messages in a specific time period with a log level of Error and the word ‘EDI’ in the message text.
Arc supports using additional searchable metadata (Tracked Headers) as an additional way to filter results in the Messages and Transactions logs. You can add tracked headers in a number of ways:
The Tracked Headers field in the Advanced Settings section of the Settings > Advanced page lets you provide a comma-delimited list of custom header names.
Some connectors, like X12, have settings in the Advanced tab that let you to opt-in to the tracking of certain headers, like ISA08.
The XML Map connector lets you right-click an element and add it as a tracked header on the output message.
_messageitem in ArcScript lets you set tracked headers through a
_message.trackedheader:HeaderNamesyntax. To see other examples of using
_message, read CData Arc Message.
Arc adds metadata headers to files as they are processed in the flow. Find the headers by clicking on the filename for a Transaction log entry. You can do this by:
expanding a message in the Messages or Transactions tab
opening the Message Details page
viewing the Input/Output tabs for a connector
The Messages tab provides insight into a message’s entire journey through a flow, which can contain many transactions. You might often want to see what happened with a message that you received, and this lets you see the full picture without having to search for and inspect each entry in the Transactions log.
The Messages table contains the full list of messages. By default, the list is sorted by the Date/Time column, but you can use the up and down arrows on each column to sort by any column. It displays the following details:
Date/Time—the timestamp for the last activity related to this message
Flow Start and Last Processed—the Connector Id where the message originated, and the Connector Id of the last connector to process a transaction related to the message. Clicking one of these Connector Ids brings you to the connector’s configuration page in the flow designer.
Latest Message—the latest filename for the message. Clicking this link opens a modal which lets you preview the message content and optionally download it.
Total Processing Time—the amount of time that the message was in the flow for processing
Status—the status of the message. The options are:
The Search bar and Filters section let you filter based on many of the columns mentioned above, as well as any Tracked Headers. The image below shows an example filter:
Use the download icon next to a log entry to download an individual log file. Use the Download All Logs button to download a zip file containing all the logs that pertain to the message.
To open the Message Details page for a message, click View Details. This page displays all transactions, logs, and related messages.
Click the + icon to the left of a message to open a card providing additional details, as shown below.
The card contains:
a list of Tracked Headers associated with the message
a list of Other Headers associated with the message (not tracked)
the Message Id
the time at which the message originated
messages that pertain to the message status. For example, if the status is Error, the card shows the error message that caused this status in the summary.
The Logs tab for the message lists logs that pertain to the processing of the message. To preview the log contents in the UI (and optionally download the file), click the link in the File Name column.
The Transactions tab contains detailed information regarding all incoming and outgoing file transfers and all files processed locally by data transformation connectors. For example, AS2 transaction logs contain HTTP request and response headers, the MDN response to the AS2 request, and any communication errors.
The Transactions tab includes a separate row for each file processed by the application. It displays the following details:
Date/Time—the timestamp for the transaction
Processed by—the Id of the connector that processed the transaction
Workspace—the Workspace where the transaction was processed
Direction—whether the transaction was a Send or Receive
Message—the text of the transaction message
File Size—the size of the transaction file
Processing Time—the time it took to process the transaction
Status—the status of the transaction. Successful transactions have a Status value of Success, while failed transactions report a status of Error.
Click the + icon to the left of a transaction to see additional details. These details include the same information described above for the Message Log. The only difference is that transaction logs only show information for a single transaction, while a message log might contain many transactions.
Tip: Transaction information for a specific connector can also be found in that connector’s Input and Output tabs.
The Application tab records any application-level errors that occur during processing and any requests made to application resources. The error messages in the Application tab can help provide context to errors for specific transactions.
The Application tab can be used to verify that external trading partners’ web requests are successfully routed to a connector within the Arc flow. When the application receives a web request at a public endpoint, it attempts to route the message to a specific connector based on message headers (for example, AS2 Identifiers). If an error prevents the application from routing the message successfully, this error appears in the Application tab.
The Application tab includes a separate row for each application event. It displays the following details:
Date/Time—the timestamp for the event
- Level—the log level. Review the information in the Message column for details. The options are:
- None—events are not logged
- Error—information about errors encountered during processing
- Warning—information about warnings encountered during processing
- Info—general information about the processing, including any errors and warnings (if applicable)
- Debug—detailed debugging information for both successful and failed processes
- Trace—detailed trace information for both successful and failed processes (useful if you need to send logs to CData Support)
You can change the log level in the Advanced Settings section of the Settings > Advanced page. However, increasing the verbosity of the logs can affect database performance, especially for less performant database types like SQLite or Derby. Only adjust the log level if you have a specific reason to do so.
Note: Logging levels Debug and Trace might log sensitive information, including file information and SSL certificates. Although sensitive details such as passwords are masked, you should review these logs for sensitive information before sharing them outside of your organization.
Resource—the resource that produced the message
Message—the message text
- Instance Id—the machine on which the event occurred
The Access tab records entries for requests that are made to endpoints that it provides. This includes API requests, connectors that expose a public endpoint (for example, Webhook), and public endpoints related to receiving data (for example, public.rst). It displays the following details:
Date/Time—the timestamp for the transaction
Method—the HTTP method used
User—the authenticated user who made the request. If the user who made the request was anonymous, this entry is blank.
Remote IP—the IP Address where the request originated
Instance Id—the Id of the instance that served the request
The Audit tab stores each change made to the application configuration. This includes all actions like creating connectors, configuring connectors, updating profile settings, etc. It displays the following details:
Date/Time—the timestamp for the configuration change
- Action—the type of change that was made. The options are:
Resource—either the Admin Console (the web UI that serves as the typical interface for managing and configuring the application) or the Admin API (the REST-based API that can be consumed to manage and configure the application).
Message—text describing the change
- User—the user who made the change
You can query the Audit tab to perform audits of the application configuration.
The SLAs tab stores information on every SLA configured on individual connectors. It includes information on which workspace the SLA is associated with, as well as status information and the time remaining in that status. It displays the following details:
- Connector Id—the Id of each connector with a defined SLA
- Workspace—the name of the associated workspace
- Previous Status—the prior SLA status (for example, OK)
- Current Status—the current SLA status (for example, At Risk)
- Time Remaining—the time remaining before the SLA changes status again (for example, to In Violation)
Some connectors have settings in the Advanced configuration tab to enhance the verbosity of transaction logs. These detailed logs are useful when debugging, and are often necessary when requesting support from email@example.com.
The most common Advanced configuration setting is Log Level. When set to Debug, additional information is added to the transaction logs that are already generated when processing a transaction.
Some connectors that send outgoing requests also have a Log Requests setting. When set to True, transaction logs include a copy of the request as it was sent to the remote server. This can be useful in narrowing the scope of any issues receiving server responses.
Some connectors that issue queries against remote systems have Verbosity and/or Logfile settings. The Verbosity should be set between 1 and 5 (where 5 is the most verbose, and recommended in most cases). When Logfile is an available setting, set it to a path on disk to write the dedicated logfile; you can provide this file to Support with the transaction logs generated when processing a transaction.