Konfigurieren von Systemprotokollen

Unica Plan verwendet das Dienstprogramm Apache log4j für Protokollkonfiguration, Fehlerbehebung und Fehlerinformationen. Wenn Sie den Typ der Nachrichten ändern möchten, die dieses Dienstprogramm in das Systemprotokoll einfügt, müssen Sie den Wert der Eigenschaft level in der Datei plan_log4j.xml an der Position <Plan_Home>/conf/ ändern. Auf die plan_log4j.xml Datei wird in den JVM Systemeigenschaften von -Dlog4j2.configurationFile und -Dlog4.configurationFile verwiesen. Wenn Sie eine andere XML als plan_log4j.xml in den Eigenschaften -Dlog4j2.configurationFile und -Dlog4.configurationFile verwenden, müssen Sie anstelle der Verwendung der Datei die gleiche Datei plan_log4j.xml für den zuvor erwähnten Zweck verwendet werden.

Festlegen der Protokollebene

Sie können die Protokollebene auf FATAL, ERROR, WARN, INFO oder DEBUG setzen, um mehr Nachrichten abzurufen. Um beispielsweise die maximale Anzahl Nachrichten zur Hilfe bei der Fehlerbehebung aufzuzeichnen, blättern Sie an das Ende der Datei plan_log4j.xml und ändern die Protokollebene in DEBUG:

<Root level="DEBUG" includeLocation="true">
      <AppenderRef ref="SYS_LOG"/>
</Root>

Wenn Ihre Untersuchung abgeschlossen ist, ändern Sie den Wert wieder zu WARN:

<Root level="WARN" includeLocation="true">
   <AppenderRef ref="SYS_LOG"/>
</Root>
Tipp: Die Datei plan_log4j.xml wird 60 Sekunden nach der Aktualisierung erneut geladen, damit Sie den Server nach Änderung der Werte in dieser Datei nicht erneut starten müssen.

Erstellen einer Sicherungskopie einer Protokolldatei

Mithilfe der größenbasiertenTrigger-Richtlinie können Sie eine Sicherungskopie einer Protokolldatei erstellen, nachdem diese eine bestimmte Größe erreicht hat. Eine Sicherungsdatei wird erstellt, wenn die Protokolldatei die in SizeBasedTriggeringPolicy angegebene Größe erreicht. Der Wert des Attributs „max“ in DefaultRolloverStrategy ist die maximale Anzahl von Sicherungsdateien, die für eine Protokolldatei erstellt werden können.

Betrachten Sie das folgende Beispiel zum Erstellen einer Sicherung für die system.log-Datei.


<RollingFile  name="SYS_LOG" fileName="${sys:plan.home}/logs/system.log"
	filePattern="${sys:plan.home}/logs/system.log.%d{yyyy-MM-dd}.%i.log.gz"
	immediateFlush="false" append="true" >
		<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%X\{user}] %-5p %F.%M:%L: %m%n" />
		<Policies>
			<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
			<SizeBasedTriggeringPolicy size="10 MB" />
		</Policies>
		<DefaultRolloverStrategy max="10"/>
		<UALevelMatchFilter levelToMatch="DEBUG, WARN,INFO, ERROR, FATAL" onMatch="ACCEPT" onMismatch="DENY"/>
</RollingFile>
Anmerkung: Wenn Sie das obige Beispiel kopieren und unverändert verwenden, müssen Sie das Standardeinstellung System Log Appender in der Datei plan_log4j.xml kommentieren.

Aktivieren des Debugging für bestimmte Funktionalitäten

Verwenden Sie die voreingestellten Module in plan_log4j.xml, wie zum Beispiel PROJECT, TASK, APPROVAL usw., um das Debugging für bestimmte Funktionalitäten zu aktivieren.

Um bestimmte Module zu debuggen, fügen Sie in der Datei plan_log4j.xml die folgenden Protokollfunktionen ein und entfernen die Kommentarzeichen in den relevanten Abschnitten.


	<!-- ============================================================== -->
	<!-- To debug specific module(s), uncomment the following logger(s) -->
	<!-- ============================================================== -->

	<!--  Functionality: PROJECT -->
	<!--
	<Logger name="com.unicacorp.uap.project" level="DEBUG"/>
	-->
	<!--  Functionality: PROGRAM -->
	<!--
	<Logger name="com.unicacorp.uap.program" level="DEBUG"/>
	-->
	<!--  Functionality: PLAN -->
	<!--            
	<Logger name="com.unicacorp.uap.plan" level="DEBUG"/>
	-->
	<!--  Functionality: TASK -->
	<!--
	<Logger name="com.unicacorp.uap.task" level="DEBUG"/>
	-->
	<!--  Functionality: CALENDAR -->
	<!--
	<Logger name="com.unicacorp.uap.calendar" level="DEBUG"/>
	-->
	<!--  Functionality: TEAM -->
	<!--            
	<Logger name="com.unicacorp.uap.team" level="DEBUG"/>
	-->
	<!--  Functionality: ASSET -->
	<!--            
	<Logger name="com.unicacorp.uap.assets" level="DEBUG"/>
	-->
	<!--  Functionality: APPROVAL -->
	<!--
	<Logger name="com.unicacorp.uap.approval" level="DEBUG"/>
	-->
	<!--  Functionality: ACCOUNT -->
	<!--
	<Logger name="com.unicacorp.uap.account" level="DEBUG"/>
	-->
	<!--  Functionality: INVOICE -->
	<!--            
	<Logger name="com.unicacorp.uap.invoice" level="DEBUG"/>
	-->
	<!--  Functionality: FORM EDITOR -->
	<!--            
	<Logger name="com.unicacorp.uap.formeditor" level="DEBUG"/>
	-->
	<!--  Functionality: GRID -->
	<!--            
	<Logger name="com.unica.grid" level="DEBUG"/>
	<Logger name="com.unicacorp.uap.grid" level="DEBUG"/>
	<Logger name="com.unicacorp.uap.tvc.grid" level="DEBUG"/>
	-->
	<!--  Functionality: TEMPLATE -->
	<!--            
	<Logger name="com.unicacorp.uap.common.template" level="DEBUG"/>
	-->
	<!--  Functionality: NOTIFICATION -->
	<!--            
	<Logger name="com.unicacorp.uap.notification" level="DEBUG"/>
	-->
	<!--  Functionality: OFFER -->
	<!--            
	<Logger name="com.unicacorp.uap.offer" level="DEBUG"/>
	-->
	<!--  Functionality: MARKETING OBJECT -->

	<!-- <Logger name="com.unica.uap.component" level="DEBUG"/> -->

Generieren von SQL-Protokollen

Sie können SQL-Protokolle generieren, wenn die Stammprotokollierungsstufe auf DEBUG festgelegt ist.

Wichtig: Wenn Sie ein Upgrade auf Fixpack 10.0.0.2 durchführen, wird die Datei plan_log4j.xml nicht überschrieben. Wenn Sie nach der Installation von Fixpack 10.0.0.2 die Generierung von SQL-Protokollen inaktivieren möchten, müssen Sie im Abschnitt SQL_LOG Kommentarzeichen setzen. Andernfalls werden nach dem Upgrade SQL-Protokolle generiert.

	<!-- ================ -->
	<!-- SQL Log Appender -->
	<!-- ================ -->
	<!-- uncomment the section below for obtaining sql logs -->
	<!-- 
	<RollingFile  name="SQL_LOG" fileName="${sys:plan.home}/logs/sql.log" 
						filePattern="${sys:plan.home}/logs/sql.log.%d{yyyy-MM-dd}" 
						immediateFlush="false" append="true" >

						<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%X\{user}] %-5p %F.%M:%L: %m%n" />
						<Policies>
											<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
						</Policies>
						<UALevelMatchFilter levelToMatch="SQL" onMatch="ACCEPT" onMismatch="DENY"/>
	</RollingFile> 
	-->

Abrufen von Protokollen für einen bestimmten Benutzer in einer bestimmten Protokolldatei

Zum Abrufen von Protokollen für einen bestimmten Benutzer in einer bestimmten Protokolldatei verwenden Sie die Klasse com.unica.afc.logger.UserMatchFilter.

Damit Protokolle für einen bestimmten Benutzer generiert werden, müssen Sie den folgenden Abschnitt in der Datei plan_log4j.xml einfügen, die Kommentarzeichen entfernen und die erforderlichen Informationen für den gewünschten Benutzer hinzufügen.

Im folgenden Beispiel wird die Protokolldatei asm_admin.log für den Benutzer asm_admin erstellt.


<!-- ================================================================ -->
<!-- To obtain log file(s) by user, uncomment the following logger(s) -->
<!-- Below is an example to obtain a log file (asm_admin.log) for the -->
<!-- 'asm_admin' user.                                                                                                                                                                                                                                            -->
<!-- ================================================================ -->
<!--
	<RollingFile  name="UserLogAppender" fileName="${sys:plan.home}/logs/asm_admin.log"
		filePattern="${sys:plan.home}/logs/asm_admin.log.%d{yyyy-MM-dd}"
		immediateFlush="false" append="true" >
		<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%X\{user}] %-5p %F.%M:%L: %m%n" />
		<Policies>
			<SizeBasedTriggeringPolicy size="10 MB" />
		</Policies>
		<DefaultRolloverStrategy max="10"/>
		<UserMatchFilter user="asm_admin" onMatch="ACCEPT" onMismatch="NEUTRAL"/>
	</RollingFile>
-->
 
<!--
	<Logger name="com.unicacorp" level="DEBUG">
		<AppenderRef ref="UserLogAppender"/>
	</Logger>
				   
	<Logger name="com.unica" level="DEBUG">
		<AppenderRef ref="UserLogAppender"/>
	</Logger>
-->