Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This documents the steps to set the SeaLights agent to run alongside other profilers currently configured in your environment.

This is done by utilizing the Microsoft CLR Instrumentation profiler, designed to allow hosting multiple profilers simultaneously. 

Table of Contents

Configuring the Microsoft CLR Instrumentation Engine to run multiple profilers

...

 When running SeaLights with Contrast Security, the configuration must be aligned with Contrast's implementation of profiler-chaining.

Info

Refer to Contrast Security .NET Agent documentation for more information:

Pre-requisites for Contrast Security profiler chaining

  • Have Contrast Security installed & configured as a profiler

  • Have SeaLights installed & configured the required environment variables (see below)

Configuring Contrast Security to run additional profilers

...

  1. In the Contrast agent configuration YAML, the enable_chaining property must be set to 'true'. Refer to Contrast Security .NET Agent documentation for more information..’

  2. Copy the following DLLs from the provided SeaLights installation to the folders specified below:

    • SL.DotNet.IpcLibrary-1.0.0.0_x64.DLL should be placed in c:\Windows\System32

    • SL.DotNet.IpcLibrary-1.0.0.0_x86.DLL should be placed in c:\Windows\SysWow64

  3. Ensure the COR_PROFILER environment variable has the SeaLights profiler CLS ID: {01CA2C22-DC03-4FF5-8350-59E32A3536BA}

  4. Once the above is completed and the service is restarted, it should start up with both profilers active.

  5. If the profilers were chained successfully, 4 additional environment variables would appear with the CONTRAST_CCC prefix:

    • CONTRAST_CCC_COR_PROFILER

    • CONTRAST_CCC_COR_PROFILER_PATH

    • CONTRAST_CCC_COR_PROFILER_PATH_32

    • CONTRAST_CCC_COR_PROFILER_PATH_64

...

...

Standard SeaLights .NET Environment Variables

After installing the Sealights .Net agent locally on the environment, you need to apply the following environment variables to make it “registered” as a profiler.

Code Block
languagepowershell
Cor_Enable_Profiling=1
Cor_Profiler={01CA2C22-DC03-4FF5-8350-59E32A3536BA}
COR_PROFILER_PATH_32=<PATH TO SL.DotNet.ProfilerLib_x86.dll>
COR_PROFILER_PATH_64=<PATH TO SL.DotNet.ProfilerLib_x64.dll>
SL_CollectorId=GlobalCollector

Sealights had deprecated a couple of legacy variable names: Cor_Profiler_Path and Sealights_CollectorId