Memcached Loader Monitoring

The Memcached Loader is responsible for updating the following in the different Memcached pools:
  • Mapis
  • Developer classes
  • Services
  • Package keys
  • HttpClientSecurity

The loader updates delta changes within last ten minutes.

Memcached Loader - Success message example
{
 "tag": "tml-cache.cache-set-0-1",
 "ingestion_time": "2019-04-12T08:10:26+00:00",
 "process": "javaproxy",
 "function": "proxy_debug",
 "TML_CLUSTER_NAME": "Local Edition Reference Cluster Pune",
 "TML_ZONE_NAME": "us-west1-a",
 "POD_IP": "x.x.0.13",a
 "message": "[INFO ] [pool-5-thread-1] c.m.p.memcacheloader.MemcacheLoader Loading services. "
}
{
 "tag": "tml-cache.cache-set-0-1",
 "ingestion_time": "2019-04-12T08:10:27+00:00",
 "process": "javaproxy",
 "function": "proxy_debug",
 "TML_CLUSTER_NAME": "Local Edition Reference Cluster Pune",
 "TML_ZONE_NAME": "us-west1-a",
 "POD_IP": "x.x.0.13",
 "message": "[INFO ] [pool-5-thread-1] c.m.p.i.m.MemcachedClientPool Active Memcached Clients: 1 "
}
{
 "tag": "tml-cache.cache-set-0-1",
 "ingestion_time": "2019-04-12T08:11:23+00:00",
 "process": "javaproxy",
 "function": "proxy_debug",
 "TML_CLUSTER_NAME": "Local Edition Reference Cluster Pune",
 "TML_ZONE_NAME": "us-west1-a",
 "POD_IP": "x.x.0.13",
 "message": "[INFO ] [pool-5-thread-1] c.m.p.memcacheloader.MemcacheLoader Successfully loaded Services. ServicesCount: 683 "
}
Memcached Loader error example
{
"tag":"tml-cache.cache-set-0-2",
"ingestion_time":"2019-04-17T11:55:01+00:00",
"process":"javaproxy",
"function":"proxy_error",
"TML_CLUSTER_NAME":"Local Edition Reference Cluster",
"TML_ZONE_NAME":"us-west1-a",
"POD_IP":"x.x.2.8",
"message":"[ERROR] [pool-5-thread-2] c.m.p.memcacheloader.MemcacheLoader   Unable to load mapis.
java.net.ConnectException: Connection refused (Connection refused) \
    at java.net.PlainSocketImpl.socketConnect(Native Method) \
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) \
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) \
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) \
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) \
    at java.net.Socket.connect(Socket.java:589) \
    at java.net.Socket.connect(Socket.java:538) \
    at java.net.Socket.<init>(Socket.java:434) \
    at java.net.Socket.<init>(Socket.java:244) \
    at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:258) \
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:305)
Wrapped by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure  The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets f
rom the server. \
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) \
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) \
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) \
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) \
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:408) \
    at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1137) \
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:355) \
    at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2490) \
    at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2527) \
    at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2309) \
    at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834) \
    at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46) \
    at sun.reflect.GeneratedConstructorAccessor18.newInstance(Unknown Source) \
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) \
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) \
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:408) \
    at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:419) \
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:344) \
    at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:441) \
    at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:139) \
    at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:109) \
    at com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource.getPooledConnection(MysqlConnectionPoolDataSource.java:60) \
    at com.mashery.proxy.internal.datasource.MonitorableMysqlConnectionPoolDataSource.getPooledConnection(MonitorableMysqlConnectionPoolDataSource.java:41) \
    at org.apache.commons.dbcp.datasources.KeyedCPDSConnectionFactory.makeObject(KeyedCPDSConnectionFactory.java:127) \
    at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:1212) \
    at org.apache.commons.dbcp.datasources.SharedPoolDataSource.getPooledConnectionAndInfo(SharedPoolDataSource.java:181)
Wrapped by: org.apache.commons.dbcp.SQLNestedException: Could not retrieve connection info from pool \
    at org.apache.commons.dbcp.datasources.SharedPoolDataSource.getPooledConnectionAndInfo(SharedPoolDataSource.java:184) \
    at org.apache.commons.dbcp.datasources.InstanceKeyDataSource.getConnection(InstanceKeyDataSource.java:701) \
    at org.apache.commons.dbcp.datasources.InstanceKeyDataSource.getConnection(InstanceKeyDataSource.java:676) \
    at com.mashery.proxy.datasource.mysql.MySQLSharedPoolDataSource.getConnection(MySQLSharedPoolDataSource.java:129) \
    at com.mashery.proxy.memcacheloader.MemcacheLoader.doLoadMapis(MemcacheLoader.java:1227) \
    at com.mashery.proxy.memcacheloader.MemcacheLoader.loadMapis(MemcacheLoader.java:1203) \
    at com.mashery.proxy.internal.memcacheloader.MemcacheLoaderManager$LoaderTask.runInterruptibly(MemcacheLoaderManager.java:456) \
    at com.mashery.proxy.internal.memcacheloader.MemcacheLoaderManager$LoaderTask.run(MemcacheLoaderManager.java:381) \
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) \
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) \
    at java.lang.Thread.run(Thread.java:748)"}