Troubleshooting

Logs

To provide support for certain questions and issues UgCS Mapper logs would be required. Go to Settings – support – Save error report.
Share the generated zip file with UgCS support team

Appendix 1

Log4j configuration file – Part of UgCS Mapper is event viewer settings file, called log4j-config.xml located at C:\Program Files (x86)\UgCS-Mapper\mapper
In the event it’s required to change event logging level, event logs location and it’s names, it can form it’s own log4j-config.xml and indicate to use it in settings menu.
Example of log4j-config.xml contents:

    <RollingFile name="MainAppLog"
                 fileName="${sys:logDir}/mapper.log"
                 filePattern="${sys:logDir}/mapper-$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz"
                 immediateFlush="false" append="true">
        <PatternLayout>
            <Pattern>%d %p %c{1.} [%t] %m %ex%n</Pattern>
        </PatternLayout>
        <Policies>
            <TimeBasedTriggeringPolicy />
            <SizeBasedTriggeringPolicy size="10 MB"/>
        </Policies>
    </RollingFile>

    <RollingFile name="VideoLog"
                 fileName="${sys:logDir}/mapper-video.log"
                 filePattern="${sys:logDir}/mapper-$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz"
                 immediateFlush="false" append="true">
        <PatternLayout>
            <Pattern>%d %p %logger [%t] %m %ex%n</Pattern>
        </PatternLayout>
        <Policies>
            <TimeBasedTriggeringPolicy />
            <SizeBasedTriggeringPolicy size="10 MB"/>
        </Policies>
    </RollingFile>

    <RollingFile name="CudaLog"
                 fileName="${sys:logDir}/mapper-cuda.log"
                 filePattern="${sys:logDir}/mapper-cuda-$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz"
                 immediateFlush="false" append="true">
        <PatternLayout>
            <Pattern>%d %p %logger [%t] %m %ex%n</Pattern>
        </PatternLayout>
        <Policies>
            <TimeBasedTriggeringPolicy />
            <SizeBasedTriggeringPolicy size="10 MB"/>
        </Policies>
    </RollingFile>

    <CustomLogAppender name="CustomLog">
        <PatternLayout>
            <Pattern>%d %p %c{1.} [%t] %m %ex%n</Pattern>
        </PatternLayout>
    </CustomLogAppender>
</Appenders>

<Loggers>
    <Logger name="MatMemoryManager" level="info" />

    <Logger name="com.j256.ormlite.stmt.StatementBuilder" level="info" />
    <Logger name="com.j256.ormlite.stmt.mapped.BaseMappedStatement" level="info" />
    <Logger name="com.j256.ormlite.stmt.StatementExecutor" level="info" />
    <Logger name="com.j256.ormlite.dao.DaoManager" level="info" />
    <Logger name="com.j256.ormlite.stmt.SelectIterator" level="info" />

    <Logger name="ImageProcNative.FFMPEG" level="debug" additivity="false">
        <AppenderRef ref="Console" />
        <AppenderRef ref="VideoLog" />
    </Logger>
    <Logger name="ImageProcNative.LiveInputSession" level="debug" additivity="false">
        <AppenderRef ref="Console" />
        <AppenderRef ref="VideoLog" />
    </Logger>
    <Logger name="ImageProcNative.VideoClient" level="debug" additivity="false">
        <AppenderRef ref="Console" />
        <AppenderRef ref="VideoLog" />
    </Logger>
    <Logger name="ImageProcNative.UdpInputEndpoint" level="debug" additivity="false">
        <AppenderRef ref="Console" />
        <AppenderRef ref="VideoLog" />
    </Logger>
    <Logger name="ImageProcNative.UrtpInputEndpoint" level="debug" additivity="false">
        <AppenderRef ref="Console" />
        <AppenderRef ref="VideoLog" />
    </Logger>
    <Logger name="ImageProcNative.TcpInputEndpoint" level="debug" additivity="false">
        <AppenderRef ref="Console" />
        <AppenderRef ref="VideoLog" />
    </Logger>
    <Logger name="HwAcceleration" level="debug" additivity="false">
        <AppenderRef ref="Console" />
        <AppenderRef ref="CudaLog" />
    </Logger>

    <Root level="debug">
        <AppenderRef ref="Console" />
        <AppenderRef ref="MainAppLog" />
        <AppenderRef ref="CustomLog" />
    </Root>
</Loggers>
The Appenders section is responsible for the parameters of individual logs: the name of the file where the recording is made, at which size a new file starts, etc. The complete list of valid settings in this section corresponds to https://logging.apache.org/log4j/2.x/manual/configuration.html

The Loggers section describes the subsystems implemented by the Mapper that record diagnostic information to the log files configured in the previous section.
Messages from the following subsystems are logged:

  1. MatMemoryManager - Mapper memory manager
  2. ImageProcNative. * - separate modules responsible for the video server, processing the resulting video.
  3. HwAcceleration - GPU computing subsystem

By default, all subsystems are configured to output to the console and one of the event files.

For each subsystem, the level of debugging information is set separately: in ascending order of size: none - error - warn - info - debug.
In error mode, only error messages will be saved to the logs, in warn mode - errors and warnings, in info mode - errors, warnings and normal state of operation.
In debug mode, a significant amount of information about mapper’s internal events will be added, which can be useful for troubleshooting.
In none mode, no information will be added to the log.