Summary of Changes to the MineMarket Client Config File

Important: If changing any port numbers, review the summary of all Default Port Numbers.

In BulkTrak.exe.config on every MineMarket Client:

  • To assist with identifying the source of errors logged in the Windows Event Viewer, the applicationName can be changed to a unique value. This is recommended for multiple installations of MineMarket.
    Copy
    <exceptionManagement>
      <publisher assembly="cdal" type="Microsoft.ApplicationBlocks.ExceptionManagement.DefaultPublisher" logName="Application" applicationName="MineMarket V5 - Client" />
    </exceptionManagement>
  • The following code might be uncommented and have the value changed.
    Copy
    <add key="ObjectNotificationMaxPendingChannels" value="128" />
  • The ClientManager port number in the following code listens between the MineMarket Server and MineMarket Client. This port must match the TCP port specified in the MineMarket Service configuration.

    Both the server name and port number can be updated with the Application Configuration Editor.

    Copy
    <wellknown type="Mincom.MineMarket.Server.ClientManager, BulkTrak.Component" url="tcp://localhost:8085/ClientManager" />
  • The server name for the IMSObjectChanged end point in the following code is always localhost, but the port number may be changed if required, and may match the IMSObjectChanged port number for the MineMarket Marketing Service.
    Copy
    <endpoint name="Mincom.MineMarket.IMSChangeNotification.Interfaces.IMSObjectChanged" 
    address="net.tcp://localhost:8041/MineMarket/ObjectChangedNotification" 
    binding="netTcpBinding" 
    bindingConfiguration="TCPForObjectNotification" 
    contract="Mincom.MineMarket.IMSChangeNotification.Interfaces.IMSObjectChanged" />
  • The IMSRegisterClientForNotification port number in the following end point must match the IMSRegisterClientForNotification port number in the BulkTrak.Server.exe.config file on the MineMarket Server.

    The server name (but not the port number) can be updated with the Application Configuration Editor.

    Copy
    <endpoint name="Mincom.MineMarket.IMSChangeNotification.Interfaces.IMSRegisterClientForNotification" address="net.tcp://localhost:8030" binding="netTcpBinding" bindingConfiguration="TCPForRegisterClientForObjectChangeNotification" contract="Mincom.MineMarket.IMSChangeNotification.Interfaces.IMSRegisterClientForNotification" />
  • A different path and file name can be specified in the following code in the log4net section.
    Copy
    <file type="log4net.Util.PatternString" value="MineMarketClientLog.txt" />
  • If using a Citrix (or other) environment where multiple users access the same BulkTrak.exe file to run the MineMarket Client, the following code in the log4net section should be changed to include a unique process ID for each user.
    Copy
    <file type="log4net.Util.PatternString" value="[%processid]-MineMarketClientLog.txt" /> 
  • If enabling users to view their own MineMarket Client logging via the Logging Monitor, add the UdpAppender reference in the following code in the log4net section.
    Copy
    <root>
      <level value="OFF" />
      <appender-ref ref="RollingLogFileAppender" />
      <appender-ref ref="UdpAppender" />
    </root>
  • The logging level can be changed to ERROR, INFO or DEBUG in the following code in the log4net section to create log files with different levels of information. In the DEBUG logging level, the log files record every time a MineMarket screen is opened in the view panel or closed, and all status messages displayed in the client, such as when saving, downstreaming and refreshing. Note: The DEBUG logging level should only be used while investigating errors because this level of logging can have a negative performance impact. If the logging level is left as OFF, no client log files are created, and no logging can be viewed in the Logging Monitor.
    Copy
    <root>
      <level value="OFF" />
      <appender-ref ref="RollingLogFileAppender" />
      <appender-ref ref="TextBoxAppender" />
    </root>
  • If logging with the DEBUG level, add the following or a similar filter into the top of the appender section. Note: Filtering does not reduce the performance impact of this level of logging.
    Copy
    <log4net>
      <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
        <filter type="log4net.Filter.StringMatchFilter">
          <regexToMatch value="Server is idle" /> <!-- Can filter by string or regex -->
          <acceptOnMatch value="false" />
        </filter>
  • Further changes may be required. Refer to the Configuration Examples.

Updates and Upgrades

To generate a new file:

  1. Rename the existing BulkTrak.exe.config file in the MineMarket installation folder, so that it can be used for reference purposes.
  2. Start the MineMarket Client.

    A new version of BulkTrak.exe.config is created.

  3. Configure the MineMarket Client as required.

Note: Even for implementations with custom integrations, Datamine does not recommend trying to update configuration files from MineMarket 5.5.0 or earlier.

To manually update an existing file from MineMarket 5.5.1:

  1. Add the following dependent assembly in the runtime section.
    Copy
    <dependentAssembly>
      <assemblyIdentity name="Microsoft.Practices.ServiceLocation" publicKeyToken="31bf3856ad364e35" culture="neutral" />
      <bindingRedirect oldVersion="0.0.0.0-1.3.0.0" newVersion="1.3.0.0" />
    </dependentAssembly>

To manually update an existing file from MineMarket 5.5.2:

  1. Add the following keys in the appSettings section.
    Copy
    <add key="UseRemoting" value="False" />
    <add key="gRPCTracers" value="-all" />
  2. Add the following dependent assemblies in the runtime section.
    Copy
    <dependentAssembly>
      <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
      <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
    </dependentAssembly>
    <dependentAssembly>
      <assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
      <bindingRedirect oldVersion="0.0.0.0-4.1.3.0" newVersion="4.1.3.0" />
    </dependentAssembly>

To manually update an existing file from MineMarket 5.5.3 Patch 1:

  1. Add the following keys in the appSettings section.
    Copy
    <add key="UseSSL" value="True" />
    <add key="SSLTargetNameOverride" value="" />
    <add key="Keystore" value=".\keystore" />