Summary: GigaSpaces logging facilities
OverviewGigaSpaces makes logging calls by use of the Java TM platform's core logging facilities. Configuration FileThe logging configuration is initialized using a logging configuration file that is read at startup. This logging configuration file is in the standard java.util.Properties format. It configures custom versions of both java.util.logging.Handler and java.util.logging.Formatter, and default levels for frequently used loggers (categories). The default configuration file is located under: <GigaSpaces>/config/gs_logging.properties Logging LevelThe logging level class defines a set of standard logging levels that can be used to control logging output. The logging level are ordered and are specified by ordered integers/constants.
The supported logging levels in descending order are:
In addition, there is a level OFF that can be used to turn off logging, and a level ALL that can be used to enable logging of all messages. Logging CategoriesThe GigaSpaces logging divided into the following categories:
For each category there are various logger name you should use when configuring the logging level. See gs_logging.properties file for exact logger name supported for each category. Here are the different modules , their logging names and their default logging level:
Client
Client Generalcom.gigaspaces.client.level = INFO com.gigaspaces.client.cluster.liveness.level = INFO GigaSpaces Client can be another component or application that connects to a GigaSpaces cluster. .Net APIThe logging configuration file includes declarations of the loggers available at the bridge between .NET and Java. com.gigaspaces.externaldatasource.dotnet.level = INFO com.gigaspaces.bridge.dispatcher.level = INFO com.gigaspaces.bridge.pbsexecuter.level = INFO com.gigaspaces.dotnet.pu.level = INFO C++ APIThe logging configuration file includes declarations of the C++ Java Proxy logger, which logs info such as exceptions and JVM creation. com.gigaspaces.cpp.proxy.level = INFO OpenSpacesorg.openspaces.level = INFO org.openspaces.pu.container.support.level = WARNING org.openspaces.pu.container.jee.context.ProcessingUnitWebApplicationContext.level = WARNING org.springframework.level = WARNING OpenSpaces wraps the GigaSpaces core product with Spring which enables Spring configuration and Spring life cycle to GigaSpaces applications. Some additional info about OpenSpaces is here. Springcom.gigaspaces.spring.level = INFO GigaSpaces Spring application logging JCA APIcom.gigaspaces.jca.level = INFO JMS APIcom.gigaspaces.jms.level = INFO Comunication Protocol com.gigaspaces.lrmi.nio.filters.SSLFilterFactory.level = INFO com.gigaspaces.lrmi.level = INFO com.gigaspaces.lrmi.stubcache.level = INFO com.gigaspaces.lrmi.context.level = INFO com.gigaspaces.lrmi.marshal.level = INFO com.gigaspaces.lrmi.watchdog.level = INFO com.gigaspaces.lrmi.classloading.level = INFO com.gigaspaces.lrmi.slow_consumer.level = INFO com.gigaspaces.lrmi.exporter.level = INFO com.gigaspaces.lrmi.communication.transport.level = INFO com.gigaspaces.lrmi.communication.manager.level = INFO com.gigaspaces.lrmi.channel.transport.level = INFO com.gigaspaces.lrmi.channel.manager.level = INFO com.gigaspaces.lrmi.channel.protocol.level = INFO GigaSpaces components communicate using internal communications adaptor, LRMI (Light Remote Method Invocation), which is based on NIO communication protocol. More information about lrmi is here. Class Loader com.gigaspaces.core.classloadercleaner.level = INFO com.gigaspaces.core.classloadercache.level = INFO GigaSpaces applications are running as part of a GigaSpaces runtime container and packaged using the structure described here. Space Space Core & Kernelcom.gigaspaces.core.engine.level = INFO com.gigaspaces.core.lease.level = INFO com.gigaspaces.core.types.level = INFO com.gigaspaces.core.memorymanager.level = INFO com.gigaspaces.kernel.level = CONFIG com.gigaspaces.core.common.level = INFO com.gigaspaces.core.config.level = CONFIG com.gigaspaces.container.level = INFO Core runtime for the space component of GigaSpaces, above loggers relate to this component and some aspects of this engine including, lease, object types and Memory Manager. Space Filterscom.gigaspaces.filters.level = INFO Space filters are described here Space Persistencycom.gigaspaces.persistent.level = INFO com.gigaspaces.persistent.shared_iterator.level = INFO org.hibernate.level = WARNING GigaSpaces persistence options are explained here. One of the packaged External Data Source implementations uses Hibernate and it is called Hibernate External Data Source which is described here. Space Querycom.gigaspaces.query.level = INFO GigaSpaces supports SQL queries on the data in space and logger corresponds to this functionality. Space LRU and Evictioncom.gigaspaces.cache.level = INFO More information about LRU policy and Eviction behavior is here Space Notificationscom.gigaspaces.core.notify.level = INFO Notifications are a mechanism that can be used to identify events related to space data (write, update, take, etc). Notifications are typically used with a Notify Container. Space FIFOcom.gigaspaces.core.fifo.level = INFO FIFO functionality is applicable for writes, reads and events (notifications) and discussed here. Space Replicationcom.gigaspaces.core.cluster.replication.level = INFO com.gigaspaces.core.cluster.replication.redolog.level = INFO com.gigaspaces.core.cluster.sync_replication.level = INFO When a cluster topology is replicated, replication functionality is enabled. More information about topologies is here. Space Partitioningcom.gigaspaces.core.cluster.partition.level = INFO When cluster uses partitioned topology, data is partitioned across multiple instances of spaces. More information about topologies is here. Space Active-Electioncom.gigaspaces.cluster.active_election.level = INFO When multiple instances (primary/backup(s)), Active Election process is used by cluster members to determine which member acts as a primary. Additional information regarding active election process is here. POJOcom.gigaspaces.pojo.level = INFO Logger corresponding to GigaSpaces POJO support, more info here. Space XA managercom.gigaspaces.core.xa.level = INFO Logger corresponding to XA Transaction manager running in the space, more information here. Space Jini Dist. TX managercom.sun.jini.mahalo.startup.level = INFO com.sun.jini.mahalo.destroy.level = INFO Logger for Jini Distributed Transaction manager, more information here. SpaceURL, SpaceValidator, SpaceURLParsercom.gigaspaces.common.spaceurl.level = INFO com.gigaspaces.common.spacefinder.level = INFO com.gigaspaces.common.lookupfinder.level = INFO com.gigaspaces.common.resourceloader.level = INFO SpaceURL and its constraints are explained here. Space Multicast Notificationscom.gigaspaces.worker.multicast.level = INFO Space notifications support multicast mode and this logger corresponds to this functionality Runtime Service Container - Generalcom.gigaspaces.grid.space.SpaceHandler.level = FINE org.jini.rio.level = INFO com.gigaspaces.start.level = CONFIG com.gigaspaces.grid.space.GigaSpacesFaultDetectionHandler.level=INFO com.gigaspaces.grid.lookup.level = INFO com.gigaspaces.management.level = INFO Lookup Servicecom.gigaspaces.core.lookupmanager.level = INFO com.sun.jini.reggie.level = INFO net.jini.discovery.LookupLocatorDiscovery.level = INFO net.jini.lookup.ServiceDiscoveryManager.level = INFO net.jini.discovery.LookupDiscovery.level = INFO net.jini.lookup.JoinManager.level = INFO net.jini.config.level = WARNING com.sun.jini.start.service.starter.level = INFO com.sun.jini.thread.TaskManager.level = INFO Lookup Service is a runtime registry of GigaSpaces components. Each component registers itself to a LUS thereby providing visibility to other components. For e.g., a GSM discovers a GSC by looking at an entry in LUS and GSC discovers a GSM similarly. More information about LUS is here. GSMcom.gigaspaces.grid.gsm.level = INFO com.gigaspaces.grid.gsm.peer.level = INFO com.gigaspaces.grid.gsm.feedback.level = INFO com.gigaspaces.grid.gsm.provision.level = INFO com.gigaspaces.grid.gsm.services.level = INFO com.gigaspaces.grid.gsm.service-instances.level = INFO com.gigaspaces.grid.gsm.selector.level = INFO org.jini.rio.tools.webster.level = INFO GSM manages the applications and maintains the SLA's of deployments. More information about GSM is here. GSCcom.gigaspaces.grid.gsc.level = INFO com.gigaspaces.grid.gsc.GSCFaultDetectionHandler.level = INFO com.gigaspaces.grid.gsm.GSMFaultDetectionHandler.level = INFO org.openspaces.pu.container.servicegrid.PUFaultDetectionHandler.level = INFO GSC is the runtime environment for GigaSpaces applications. More information about GSC's is here. ESMorg.openspaces.grid.esm.level = INFO Elastic Service Manager (ESM) is an implementation of the Elastic Middleware Services. It is built on-top of the existing administrative API exposed by the GigaSpaces components. See The Elastic Service Manager page for more details. GSAcom.gigaspaces.grid.gsa.level = INFO The GigaSpaces Agent (GSA) acts as a process manager that can spawn and manage Service Grid processes (Operating System level processes) such as The GigaSpaces Manager (GSM), The GigaSpaces Container (GSC), and Lookup Service (LUS). More information regarding GSA can be found here. Security com.gigaspaces.security.level = INFO Logger corresponding to security of GigaSpaces components. This includes configuration and runtime execution of security functionality. More information regarding GigaSpaces security is here. Web Container Any web application default logging level (logger name for them is web.[processing unit name].[instance id]) web.level = INFO org.mortbay.level = WARNING Web application support in GigaSpaces is provided using a Jetty container. These loggers correspond to Web Container. More information about GigaSpaces Web Application support is here. Mule Integration org.mule.level = WARNING org.mule.MuleServer.level = INFO org.mule.RegistryContext.level = INFO org.openspaces.esb.mule.level = WARNING These loggers correspond to Mule integration. More information about Mule integration is here, Mule ESB and Mule Processing Unit Management For GUI, browser, cluster view, JMX logging: com.gigaspaces.admin.level = INFO com.gigaspaces.admin.ui.level = INFO com.gigaspaces.admin.ui.cluster.view.level = INFO com.gigaspaces.admin.ui.spacebrowser.level = INFO com.gigaspaces.admin.cli.level = INFO com.gigaspaces.jmx.level = INFO Loggers corresponding to GigaSpaces Management Console/UI. Additional information regarding UI can be found here. Overriding the Default ConfigurationThe configuration defined in the gs_logging.properties file may be overridden by either using system properties or by providing an external configuration file with overrides. This external configuration file should be located in the classpath under: /config/gs_ext_logging.properties Any configuration that you wish to override in gs_logging.properties file, should appear in gs_ext_logging.properties with its new value. The same applies for system properties, e.g. -Dcom.gigaspaces.exceptions.level=WARNING
Overriding the Configuration FileYour own configuration file may also be used instead of the platform's default. This is done by setting the configuration file location using a system property: -Djava.util.logging.config.file=myfile.properties GigaSpaces scripts rely on the exported environment variable GS_LOGGING_CONFIG_FILE (declared in <GigaSpaces>/bin/setenv script). The preferred way to apply your override file is to use a wrapper script: export the new setting of this variable and call the original script. This ensures that when setenv.sh(bat) is called from within the platform's scripts, it will pick up the override. # unix export GS_LOGGING_CONFIG_FILE=myfile.properties ./gsc.sh Provided that your application initializes the logging facility via the Logging API (e.g. LogManager.readConfiguration(InputStream ins)), you may wish to disable the GigaSpaces configuration altogether. Once disabled, your Java logging settings will take place. This is done with the following system property: -Dcom.gs.logging.disabled=true
TroubleshootingTo troubleshoot and detect which logging properties file was loaded and from which location, set the following system property to true. This property already exists in the scripts (for convenience) and by default is set to false. -Dcom.gs.logging.debug=true
HandlersGigaSpaces out of the box configures logging with two log Handlers,
Java util logging supports other handlers. MemoryHandler, SocketHandler or any other handler can be used instead of the above. More information about handlers is here. You can also use one of the open source logging frameworks that support java.util.logging. FormattersFormatters are in charge of formatting the log messages and adding meta data to them (date, time, level, etc). Exception visibilityGigaSpaces prints exception stack traces for messages with level SEVERE or higher. com.gigaspaces.exceptions.level = SEVERE Messages with lower levels with only be logged with the exception's toString() value. To force the logger to print the stack trace of exception with lower levels, such as Level WARNING for example, set the com.gigaspaces.exceptions.level property to WARNING. Note that if the exception is a java.lang.RuntimeException its stack trace will always be logged, regardless of the level definition. Logging Management at RuntimeIt is possible to change various logger level settings while the system is up and running without the need to restart it. You can do so by connecting to the JMX Bean of the Java logging facility via JConsole for example.
The LoggingMXBean enables you to:
FAQHow do I minimize cost when migrating to 7.0 ? Section Contents
|
![]() |
GigaSpaces.com - Legal Notice - 3rd Party Licenses - Site Map - API Docs - Forum - Downloads - Blog - White Papers - Contact Tech Writing - Gen. by Atlassian Confluence |