Tetra Chromeleon Agent FAQ

How does the Chromeleon Data Agent work?

The Tetra Chromeleon Agent interacts with Chromeleon through Chromeleon 7.2.5 SDK. Internally, it contains three tasks: scanning, generation, and upload.

  • Scanning: The Tetra Chromeleon Agent scans the Data Vault selected by the user from Management Console to detect any new or updated injections. If so, the Agent records the Injection URLs to an internal SQLite database.
  • Generation: based on Scanning results, the Agent fetches the Injection and its related data, and then serializes the data as JSON files to a local folder.
  • Upload: the Agent uploads the JSON files to Tetra Data Lake. After the file is uploaded successfully, the file is removed to save disk space.

Which data items are fetched from Chromeleon?

Tetra Chromeleon Agent extracts the injection and the data associated with it. Here is a brief summary of the data items extracted from Chromeleon.

  • Injection
  • Sequence
  • Instrument Method
  • Processing Method
  • MsRawItem
  • Peak
  • Signal
  • Chromatogram
  • Spectral Field
  • Spectrum
  • Audit Trail

Does the Tetra Chromeleon Data Agent have limitations?

The Tetra Chromeleon Agent directly references Chromeleon SDK, the Agent inherits the limitation of Chromelon SDK. Since the Chromeleon SDK is a 32-bit component, it that can only consume 2 GB of Memory.

What privileges are required for Chromeleon users configured in Agent to be able to extract data?

In Chromeleon, a Privilege can be defined as a user's right to access certain functions; it can also grant a user or group of users certain performance rights. Chromeleon has various privileges and those can be combined in any order to be added to a role.

For the Agent to scan, access different objects, and extract data, the user used to connect via SDK needs to have a role and the role needs to have a set of privileges. The following set of privileges, when assigned together to a role allows the user to scan and extract data:

  • Queries >> Create Queries
  • Queries >> Execute Queries
  • Archive >> Send to File
  • All privileges in the Reporting section

How is Agent impacted if User Mode is disabled in Chromeleon?

The User Mode setting in Chromeleon defines whether a username/password authentication is required to access the application (manually or through SDK). when user mode is disabled, username/password/role authentication is not required to connect and access Chromeleon. However, if any object in Chromeleon (e.g. Data Vault or Folder) has Access Control List specified (i.e. has specific roles assigned to it) then those objects cannot be accessed. Any sequence/injection data in those objects will not be extracted by the Agent.

Why can the user not access a Chromeleon object (e.g. Data Vault or Folder)?

Chromeleon has options to explicitly allow or restrict privileges in individual folders or complete Data Vaults by adding users or access groups to the Access Control List for the data object. However, the privileges of a user are always restricted by the roles assigned to him or her; you cannot extend privileges to a user by allowing roles in the Access Control List. In addition, if a Logon Role is enabled, the privileges of a user or access group are always restricted by the privileges of the specified Logon Role.

If the Agent user/role does not have access control for an object, the Agent will not be able to scan that.

What is the impact of changing the path of a Sequence in Chromeleon?

When a path for Sequence is changed in Chromeleon, if that RAW JSON for the Injections in the Sequence has been previously generated by the Agent, then these Injections will be regenerated and will get a new path in S3. These files will not be a new version of the existing RAW JSONs generated earlier for the same Injections, since the path has changed. These newly generated RAW JSONs will be version 1 in the platform with the new S3 path.

What is the impact of changing the Decode Injection URL setting in Agent UI?

When the "Decode Injection URL" setting is off, then the injection URL will contain URL encoding characters (e.g. space will become %20). When the "Decode Injection URL" setting is on, then the injection URL will not contain URL encoding characters. The URL path is used to create the S3 path and toggling this on/off will result in the creation of a new S3 path depending on if special characters are present. If RAW JSON for an injection is already generated, and the injection changes after altering the "Decode Injection URL" setting, new RAW JSON will be generated in a new S3 path as version 1 of the file (and not a new version of the existing RAW JSON). This may have a downstream impact on protocol execution. Please review the impact before altering this setting. Please reach out to your CSM if you have questions on how this will impact the data in TDP.
An example is when the injection URL in Chromeleon is "chrom://desktop-123/ChromeleonLocal/My Sequence/Run 1/exp12345.seq/100.smp",

  • When the "Decode Injection URL" setting is off, the S3 path of RAW JSON will be /desktop-123/ChromeleonLocal/My%20Sequence/Run%201/exp12345.seq
  • When the "Decode Injection URL" setting is on, /desktop-123/ChromeleonLocal/My Sequence/Run 1/exp12345.seq