Jämförda versioner

Nyckel

  • Dessa rader lades till.
  • Denna rad togs bort.
  • Formateringen ändrades.

...

Info
iconfalse

SOITOOLKIT_MULE_AMQ_BROKER_URL=failover:(tcp://localhost:61616)

SOITOOLKIT_MULE_AMQ_MAX_REDELIVERIES=3

SOITOOLKIT_MULE_AMQ_REDELIVERY_DELAY=10000

SOITOOLKIT_MULE_AMQ_NO_OF_CONSUMERS=2

Exempel på logklient (implementation)

I den nationella tjänsteplattformen används en Apache Cassandra databas för att hantera loggposter, och den kontrollerande Webb-applikationen (log-analyzer) ifråga hanterar såväl aktiv övervakning som passiv loggning och aggregering av statistikräknare (sk. aktuellt läge), se vidare skltpservices på Google Code.

Exempel på en implementation som använder Apache Camel för att läsa av en meddelandekö kan se ut enligt (fragment):

Info
iconfalse

...

CamelContext camel = new DefaultCamelContext();

camel.addComponent("activemq", ActiveMQComponent.activeMQComponent("failover:(tcp://localhost:61616)"));

 

Consumer consumer = camel.getEndpoint("activemq:SOITOOLKIT.LOG.STORE").createConsumer(new Processor() {

@Override

public void process(Exchange exchange) throws Exception {

try {

// Java LogEvent class generated from XSD, unmarshal with JAXB

LogEvent le = unmarshal((String)exchange.getIn().getBody());

// do something

storeLogEvent(le);

} catch (Exception e) {

log.error("Unable to store log event", e);

throw e;

}

}

});

consumer.start();

...

Konkret logklient - log analyzer

Installation

Applikationen log-analyzer är en web applikation (war)

  • Källkod, log-analyzer
  • Ladda ner applikationen, från googlecode
  • Driftsätt applikationen på Tomcat genom att kopiera war-filen till <TOMCAT>/webapps
  • Ta bort applikationen genom att ta bort war-filen från <TOMCAT>/webapps och Tomcat avinstallerar applikationen
  • Ladda om applikationen genom att tex göra en touch på <app>/WEB-INF/web.xml

Konfiguration

Applikationen log-analyzer har defaultinställningar som överlagras genom att definiera en fil med namnet config.properties i katalogen ${user.home}/.log-analyzer/. 

 

Följande parametrar finns definierade och kan överlagras:

Kodblock
# comma separated list
#log.mq.instances=failover:(tcp://localhost:61616)
log.mq.instances=

# comma separated list
log.store.instances=localhost:9160
log.store.clusterName=SKLTP


#log.store.clusterName=Test Cluster
# time to live in days
log.store.payloadTTL=7


# time to live in days for meta information
log.store.metaTTL=30


# time to live in days for weekly counters
log.store.weeklyCounterTTL=340


# level of logging to stdout/console
console.logLevel = WARN


# timeout in millis
log.store.timeout = 60000


# counter domains
log.store.counterDomains = \
urn:riv:crm:carelisting, urn:riv:ehr:accesscontrol, urn:riv:insuranceprocess:healthreporting:RegisterMedicalCertificate, \
urn:riv:insuranceprocess:healthreporting, urn:riv:eservicesupply, urn:riv:informatics:terminology, \
urn:riv:processdevelopment:infections, urn:riv:crm:scheduling, urn:riv:druglogistics:dosedispensing:, \
urn:riv:inera:se.apotekensservice:axs:, urn:riv:inera:se.apotekensservice:or:, urn:riv:inera:se.apotekensservice:folk:, \
urn:riv:inera:se.apotekensservice:lf:, urn:riv:inera:se.apotekensservice:expo:


# timeout in seconds 
analyze.timeout = 15


# log directory
log.directory = .