Giter Club home page Giter Club logo

k8s-3tier-webapp's People

Contributors

codacy-badger avatar datreeio[bot] avatar deepsource-autofix[bot] avatar deepsourcebot avatar dependabot-preview[bot] avatar dependabot[bot] avatar eyu-dev avatar fossabot avatar github-actions[bot] avatar imgbotapp avatar mend-bolt-for-github[bot] avatar mergify[bot] avatar renovate-bot avatar renovate[bot] avatar restyled-commits avatar snyk-bot avatar yurake avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

k8s-3tier-webapp's Issues

Security Alert

yurak/jaxrs-memcached-quarkus (alpine 3.10.3)

Title Severity CVE Package Name Installed Version Fixed Version References
libjpeg-turbo: several integer overflows and subsequent segfaults when attempting to compress/decompress gigapixel images CRITICAL CVE-2019-2201 libjpeg-turbo 2.0.2-r0 2.0.3-r0 http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00047.html
http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00048.html
https://lists.fedoraproject.org/archives/list/[email protected]/message/Y4QPASQPZO644STRFTLOD35RIRGWWRNI/
https://source.android.com/security/bulletin/2019-11-01
https://usn.ubuntu.com/4190-1/

Install chaos monkey on kubernetes

Description

Related links

Tasks

  • Update README.md
  • Add Github Actions that applies chaos engineering
  • Add experimental pattern files
  • Add apply and delete Jenkins jobs

[jaxrs-memcached-quarkus] NumberFormatException: null

Steps to reproduce

  1. kubectl apply memcached
  2. kubectl apply jaxrs-memcached-quarkus

Expected

pod is reday

Actual

Conditions:
  Type              Status
  Initialized       True
  Ready             False
  ContainersReady   False
  PodScheduled      True

Logs

java.lang.NumberFormatException: null
	at java.lang.Integer.parseInt(Integer.java:542)
	at java.lang.Integer.parseInt(Integer.java:615)
	at webapp.tier.service.MemcachedService.getMsg(MemcachedService.java:58)
	at webapp.tier.service.MemcachedService.isActive(MemcachedService.java:78)
	at webapp.tier.healthcheck.ReadinessHealthCheck.call(ReadinessHealthCheck.java:23)
	at webapp.tier.healthcheck.ReadinessHealthCheck_ClientProxy.call(ReadinessHealthCheck_ClientProxy.zig:36)
	at io.smallrye.health.SmallRyeHealthReporter.jsonObject(SmallRyeHealthReporter.java:154)
	at io.smallrye.health.SmallRyeHealthReporter.fillCheck(SmallRyeHealthReporter.java:141)
	at io.smallrye.health.SmallRyeHealthReporter.processChecks(SmallRyeHealthReporter.java:129)
	at io.smallrye.health.SmallRyeHealthReporter.getHealth(SmallRyeHealthReporter.java:107)
	at io.smallrye.health.SmallRyeHealthReporter.getReadiness(SmallRyeHealthReporter.java:97)
	at io.smallrye.health.SmallRyeHealthReporter_ClientProxy.getReadiness(SmallRyeHealthReporter_ClientProxy.zig:101)
	at io.quarkus.smallrye.health.runtime.SmallRyeReadinessHandler.handle(SmallRyeReadinessHandler.java:40)
	at io.quarkus.smallrye.health.runtime.SmallRyeReadinessHandler.handle(SmallRyeReadinessHandler.java:32)
	at io.quarkus.vertx.http.runtime.ResumeHandler.handle(ResumeHandler.java:19)
	at io.quarkus.vertx.http.runtime.ResumeHandler.handle(ResumeHandler.java:6)
	at io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
	at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316)
	at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.lang.Thread.run(Thread.java:748)
java.lang.Exception: Get Error.
	at webapp.tier.service.MemcachedService.getMsg(MemcachedService.java:69)
	at webapp.tier.service.MemcachedService.isActive(MemcachedService.java:78)
	at webapp.tier.healthcheck.ReadinessHealthCheck.call(ReadinessHealthCheck.java:23)
	at webapp.tier.healthcheck.ReadinessHealthCheck_ClientProxy.call(ReadinessHealthCheck_ClientProxy.zig:36)
	at io.smallrye.health.SmallRyeHealthReporter.jsonObject(SmallRyeHealthReporter.java:154)
	at io.smallrye.health.SmallRyeHealthReporter.fillCheck(SmallRyeHealthReporter.java:141)
	at io.smallrye.health.SmallRyeHealthReporter.processChecks(SmallRyeHealthReporter.java:129)
	at io.smallrye.health.SmallRyeHealthReporter.getHealth(SmallRyeHealthReporter.java:107)
	at io.smallrye.health.SmallRyeHealthReporter.getReadiness(SmallRyeHealthReporter.java:97)
	at io.smallrye.health.SmallRyeHealthReporter_ClientProxy.getReadiness(SmallRyeHealthReporter_ClientProxy.zig:101)
	at io.quarkus.smallrye.health.runtime.SmallRyeReadinessHandler.handle(SmallRyeReadinessHandler.java:40)
	at io.quarkus.smallrye.health.runtime.SmallRyeReadinessHandler.handle(SmallRyeReadinessHandler.java:32)
	at io.quarkus.vertx.http.runtime.ResumeHandler.handle(ResumeHandler.java:19)
	at io.quarkus.vertx.http.runtime.ResumeHandler.handle(ResumeHandler.java:6)
	at io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
	at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316)
	at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.lang.Thread.run(Thread.java:748)

Refactor webapp service

Description

webapp-service include all service
want to separate each service for microsevice

[AsIs]
all

[Tobe]
webapp-service

  • util
  • interface

each service

  • each service

Install Loki

Description

  • add loki with helm
  • monitor system out through loki
  • create application log
  • monitor log through loki

Related links

  • xxx

Change to DELETE api

Description

api change to delete http method

  • mysql/delete
  • postgres/delete

Related links

  • xxx

can't read @ConfigProperty

git/k8s-3tier-webapp-minikube/application/redis-mysql-quarkus
% ./mvnw compile quarkus:dev


[INFO] Scanning for projects...
[INFO]
[INFO] --------------------< org.acme:redis-mysql-quarkus >--------------------
[INFO] Building redis-mysql-quarkus 1.0.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ redis-mysql-quarkus ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 3 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ redis-mysql-quarkus ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- quarkus-maven-plugin:1.0.1.Final:dev (default-cli) @ redis-mysql-quarkus ---
Listening for transport dt_socket at address: 5005
The application is starting...
2019-12-20 17:17:49,727 INFO  [io.quarkus] (main) Quarkus 1.0.1.Final started in 0.956s. Listening on: http://0.0.0.0:8080
2019-12-20 17:17:49,785 INFO  [io.quarkus] (main) Profile dev activated. Live Coding activated.
2019-12-20 17:17:49,785 INFO  [io.quarkus] (main) Installed features: [cdi, jdbc-mysql, resteasy]
java.lang.IllegalArgumentException: hostname can't be null
	at java.net.InetSocketAddress.checkHost(InetSocketAddress.java:149)
	at java.net.InetSocketAddress.<init>(InetSocketAddress.java:216)
	at redis.clients.jedis.Connection.connect(Connection.java:181)
	at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:100)
	at redis.clients.jedis.Connection.setTimeoutInfinite(Connection.java:93)
	at redis.clients.jedis.Jedis.subscribe(Jedis.java:2787)
	at org.acme.service.RedisService.subscribeRedis(RedisService.java:39)
	at org.acme.events.TaskExecute.run(TaskExecute.java:13)
	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)
the application is stopping...

jaxrs-hazelcast-quarkus HTTP Request to /health/ready failed

Logs

00:48:10 ERROR [io.qu.ve.ht.ru.QuarkusErrorHandler] (vert.x-eventloop-thread-0) HTTP Request to /health/ready failed, error id: ebdad045-a4bd-4c1b-b2c5-17e2ee2b89b0-292: java.lang.NoClassDefFoundError: Could not initialize class com.hazelcast.client.config.XmlClientConfigBuilder
at webapp.tier.service.ConnectHazelcast.getInstance(ConnectHazelcast.java:35)
at webapp.tier.service.HazelcastService.isActive(HazelcastService.java:14)
at webapp.tier.healthcheck.ReadinessHealthCheck.call(ReadinessHealthCheck.java:22)
at webapp.tier.healthcheck.ReadinessHealthCheck_ClientProxy.call(ReadinessHealthCheck_ClientProxy.zig:36)
at io.smallrye.health.SmallRyeHealthReporter.jsonObject(SmallRyeHealthReporter.java:154)
at io.smallrye.health.SmallRyeHealthReporter.fillCheck(SmallRyeHealthReporter.java:141)
at io.smallrye.health.SmallRyeHealthReporter.processChecks(SmallRyeHealthReporter.java:129)
at io.smallrye.health.SmallRyeHealthReporter.getHealth(SmallRyeHealthReporter.java:107)
at io.smallrye.health.SmallRyeHealthReporter.getReadiness(SmallRyeHealthReporter.java:97)
at io.smallrye.health.SmallRyeHealthReporter_ClientProxy.getReadiness(SmallRyeHealthReporter_ClientProxy.zig:101)
at io.quarkus.smallrye.health.runtime.SmallRyeReadinessHandler.handle(SmallRyeReadinessHandler.java:40)
at io.quarkus.smallrye.health.runtime.SmallRyeReadinessHandler.handle(SmallRyeReadinessHandler.java:32)
at io.quarkus.vertx.http.runtime.ResumeHandler.handle(ResumeHandler.java:19)
at io.quarkus.vertx.http.runtime.ResumeHandler.handle(ResumeHandler.java:6)
at io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316)
at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.lang.Thread.run(Thread.java:748)

share connection

Expected

not share connection in class

Actual

share connection in class

Alart disk full

Description

escape for disk full

Suggetions

  • add jenkins job
  • add kubernetes job
  • add kubernetes crd

More actions

  • consider who reduce disk useage

Security Alert

yurak/hazelcast-mysql-quarkus (alpine 3.10.3)

Title Severity CVE Package Name Installed Version Fixed Version References
libjpeg-turbo: several integer overflows and subsequent segfaults when attempting to compress/decompress gigapixel images CRITICAL CVE-2019-2201 libjpeg-turbo 2.0.2-r0 2.0.3-r0 http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00047.html
http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00048.html
https://lists.fedoraproject.org/archives/list/[email protected]/message/Y4QPASQPZO644STRFTLOD35RIRGWWRNI/
https://source.android.com/security/bulletin/2019-11-01
https://usn.ubuntu.com/4190-1/

Add testing tools

Description

  • java static analysis - travis
  • java static analysis - sonarcloud
  • docker security scan - trivy
  • security test - kubeval
  • e2e test - minikube

DONE

  • java unit test - junit
  • java coverage - jacoco, codedev
  • e2e test - postman, newman

Related links

  • xxx

[activemq-mysql-quarkus] MongoSocketOpenException

Problem

webapp-service project has mongodb service, the service affects dependent projects (may be most of all projects have same problem).

Logs

$ kubectl logs -f activemq-mysql-quarkus                                                           (git)-[master]
12:03:32 INFO  [or.mo.dr.cluster] (main) Cluster created with settings {hosts=[127.0.0.1:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
12:03:32 INFO  [or.mo.dr.cluster] (main) Cluster created with settings {hosts=[127.0.0.1:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
12:03:32 INFO  [or.mo.dr.cluster] (cluster-ClusterId{value='5e89c914bf3e9e132100af54', description='null'}-127.0.0.1:27017) Exception in monitor thread while connecting to server 127.0.0.1:27017: com.mongodb.MongoSocketOpenException: Exception opening socket
	at com.mongodb.internal.connection.AsynchronousSocketChannelStream$OpenCompletionHandler.failed(AsynchronousSocketChannelStream.java:117)
	at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:128)
	at sun.nio.ch.UnixAsynchronousSocketChannelImpl.finishConnect(UnixAsynchronousSocketChannelImpl.java:279)
	at sun.nio.ch.UnixAsynchronousSocketChannelImpl.finish(UnixAsynchronousSocketChannelImpl.java:198)
	at sun.nio.ch.UnixAsynchronousSocketChannelImpl.onEvent(UnixAsynchronousSocketChannelImpl.java:213)
	at sun.nio.ch.EPollPort$EventHandlerTask.run(EPollPort.java:293)
	at sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112)
	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)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:527)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
Caused by: java.net.ConnectException: Connection refused
	at com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_VA_LIST:Ljava_net_ConnectException_2_0002e_0003cinit_0003e_00028Ljava_lang_String_2_00029V(JNIJavaCallWrappers.java:0)
	at sun.nio.ch.UnixAsynchronousSocketChannelImpl.checkConnect(UnixAsynchronousSocketChannelImpl.java)
	at sun.nio.ch.UnixAsynchronousSocketChannelImpl.finishConnect(UnixAsynchronousSocketChannelImpl.java:252)
	... 9 more

12:03:32 INFO  [or.mo.dr.cluster] (cluster-ClusterId{value='5e89c914bf3e9e132100af53', description='null'}-127.0.0.1:27017) Exception in monitor thread while connecting to server 127.0.0.1:27017: com.mongodb.MongoSocketOpenException: Exception opening socket
	at com.mongodb.internal.connection.SocketStream.open(SocketStream.java:70)
	at com.mongodb.internal.connection.InternalStreamConnection.open(InternalStreamConnection.java:126)
	at com.mongodb.internal.connection.DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:117)
	at java.lang.Thread.run(Thread.java:748)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:527)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
Caused by: java.net.ConnectException: Connection refused (Connection refused)
	at com.oracle.svm.jni.JNIJavaCallWrappers.jniInvoke_VA_LIST:Ljava_net_ConnectException_2_0002e_0003cinit_0003e_00028Ljava_lang_String_2_00029V(JNIJavaCallWrappers.java:0)
	at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java)
	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:607)
	at com.mongodb.internal.connection.SocketStreamHelper.initialize(SocketStreamHelper.java:64)
	at com.mongodb.internal.connection.SocketStream.initializeSocket(SocketStream.java:79)
	at com.mongodb.internal.connection.SocketStream.open(SocketStream.java:65)
	... 5 more

12:03:32 INFO  [ActiveMqService] (main) The application is starting...

IllegalArgumentException: A metric with metricID MetricID{name='jaeger_tracer_reporter_queue_length', tags=[]} already exists

Logs

14:22:06 INFO  [CallRandomPublshSchedule] (executor-thread-6) Call: Random Publish
14:22:06 ERROR [io.qu.sc.ru.SimpleScheduler] (executor-thread-6) Error occured while executing task for trigger IntervalTrigger [id=1_webapp.tier.schedule.CallRandomPublshSchedule_ScheduledInvoker_callRandomPublsh_6039ec9d426ab943aefcf82c79961d32a42f4740, interval=10000]: java.lang.IllegalArgumentException: A metric with metricID MetricID{name='jaeger_tracer_reporter_queue_length', tags=[]} already exists
	at io.smallrye.metrics.MetricsRegistryImpl.register(MetricsRegistryImpl.java:129)
	at io.quarkus.jaeger.runtime.QuarkusJaegerMetricsFactory.createGauge(QuarkusJaegerMetricsFactory.java:48)
	at io.jaegertracing.internal.metrics.Metrics.createMetrics(Metrics.java:129)
	at io.jaegertracing.internal.metrics.Metrics.<init>(Metrics.java:32)
	at io.jaegertracing.internal.metrics.Metrics.<init>(Metrics.java:28)
	at io.jaegertracing.Configuration.getTracerBuilder(Configuration.java:221)
	at io.quarkus.jaeger.runtime.QuarkusJaegerTracer.tracer(QuarkusJaegerTracer.java:27)
	at io.quarkus.jaeger.runtime.QuarkusJaegerTracer.activeSpan(QuarkusJaegerTracer.java:67)
	at io.opentracing.util.GlobalTracer.activeSpan(GlobalTracer.java:148)
	at io.quarkus.smallrye.opentracing.runtime.TracerProducer_ProducerMethod_tracer_96dadb3d6afa0cccadfe742c3e06ad433737c844_ClientProxy.activeSpan(TracerProducer_ProducerMethod_tracer_96dadb3d6afa0cccadfe742c3e06ad433737c844_ClientProxy.zig:143)
	at io.smallrye.opentracing.OpenTracingAsyncInterceptor.prepareContext(OpenTracingAsyncInterceptor.java:27)
	at java.util.ArrayList.forEach(ArrayList.java:1257)
	at org.jboss.resteasy.microprofile.client.ProxyInvocationHandler.prepareAsyncInterceptors(ProxyInvocationHandler.java:197)
	at org.jboss.resteasy.microprofile.client.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:105)
	at com.sun.proxy.$Proxy206.random(Unknown Source)
	at webapp.tier.schedule.CallRandomPublshSchedule.callRandomPublsh(CallRandomPublshSchedule.java:36)
	at webapp.tier.schedule.CallRandomPublshSchedule_ClientProxy.callRandomPublsh(CallRandomPublshSchedule_ClientProxy.zig:157)
	at webapp.tier.schedule.CallRandomPublshSchedule_ScheduledInvoker_callRandomPublsh_6039ec9d426ab943aefcf82c79961d32a42f4740.invokeBean(CallRandomPublshSchedule_ScheduledInvoker_callRandomPublsh_6039ec9d426ab943aefcf82c79961d32a42f4740.zig:45)
	at io.quarkus.arc.runtime.BeanInvoker.invoke(BeanInvoker.java:20)
	at io.quarkus.scheduler.runtime.SimpleScheduler$2.run(SimpleScheduler.java:123)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426)
	at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
	at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
	at java.lang.Thread.run(Thread.java:748)
	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:527)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)

Security Alert

yurak/jaxrs-rabbitmq-quarkus (alpine 3.10.3)

Title Severity CVE Package Name Installed Version Fixed Version References
libjpeg-turbo: several integer overflows and subsequent segfaults when attempting to compress/decompress gigapixel images CRITICAL CVE-2019-2201 libjpeg-turbo 2.0.2-r0 2.0.3-r0 http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00047.html
http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00048.html
https://lists.fedoraproject.org/archives/list/[email protected]/message/Y4QPASQPZO644STRFTLOD35RIRGWWRNI/
https://source.android.com/security/bulletin/2019-11-01
https://usn.ubuntu.com/4190-1/

[jaxrs-activemq-quarkus]Publish Error

Logs

java.lang.NullPointerException
	at webapp.tier.service.ActiveMqService.publishMsg(ActiveMqService.java:73)
	at webapp.tier.resource.ActiveMqResource.publish(ActiveMqResource.java:57)
	at webapp.tier.resource.ActiveMqResource_Subclass.publish$$superaccessor4(ActiveMqResource_Subclass.zig:128)
	at webapp.tier.resource.ActiveMqResource_Subclass$$function$$4.apply(ActiveMqResource_Subclass$$function$$4.zig:29)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:54)
	at io.smallrye.metrics.interceptors.TimedInterceptor.timedCallable(TimedInterceptor.java:95)
	at io.smallrye.metrics.interceptors.TimedInterceptor.timedMethod(TimedInterceptor.java:70)
	at io.smallrye.metrics.interceptors.TimedInterceptor_Bean.intercept(TimedInterceptor_Bean.zig:259)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:41)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:50)
	at io.smallrye.metrics.interceptors.CountedInterceptor.countedCallable(CountedInterceptor.java:95)
	at io.smallrye.metrics.interceptors.CountedInterceptor.countedMethod(CountedInterceptor.java:70)
	at io.smallrye.metrics.interceptors.CountedInterceptor_Bean.intercept(CountedInterceptor_Bean.zig:325)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:41)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:41)
	at io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:32)
	at webapp.tier.resource.ActiveMqResource_Subclass.publish(ActiveMqResource_Subclass.zig:729)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:151)
	at org.jboss.resteasy.core.MethodInjectorImpl.lambda$invoke$3(MethodInjectorImpl.java:122)
	at java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:616)
	at java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:628)
	at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:1996)
	at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:110)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:122)
	at org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:594)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:468)
	at org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$2(ResourceMethodInvoker.java:421)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:363)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:423)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:391)
	at org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invoke$1(ResourceMethodInvoker.java:365)
	at java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:995)
	at java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2137)
	at java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:110)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:365)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:477)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:252)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:153)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:363)
	at org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:156)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:238)
	at io.quarkus.resteasy.runtime.standalone.RequestDispatcher.service(RequestDispatcher.java:73)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.dispatch(VertxRequestHandler.java:120)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.access$000(VertxRequestHandler.java:36)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler$1.run(VertxRequestHandler.java:85)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426)
	at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
	at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
	at java.lang.Thread.run(Thread.java:748)
	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:527)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
java.lang.Exception: Publish Error.
	at webapp.tier.service.ActiveMqService.publishMsg(ActiveMqService.java:77)
	at webapp.tier.resource.ActiveMqResource.publish(ActiveMqResource.java:57)
	at webapp.tier.resource.ActiveMqResource_Subclass.publish$$superaccessor4(ActiveMqResource_Subclass.zig:128)
	at webapp.tier.resource.ActiveMqResource_Subclass$$function$$4.apply(ActiveMqResource_Subclass$$function$$4.zig:29)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:54)
	at io.smallrye.metrics.interceptors.TimedInterceptor.timedCallable(TimedInterceptor.java:95)
	at io.smallrye.metrics.interceptors.TimedInterceptor.timedMethod(TimedInterceptor.java:70)
	at io.smallrye.metrics.interceptors.TimedInterceptor_Bean.intercept(TimedInterceptor_Bean.zig:259)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:41)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:50)
	at io.smallrye.metrics.interceptors.CountedInterceptor.countedCallable(CountedInterceptor.java:95)
	at io.smallrye.metrics.interceptors.CountedInterceptor.countedMethod(CountedInterceptor.java:70)
	at io.smallrye.metrics.interceptors.CountedInterceptor_Bean.intercept(CountedInterceptor_Bean.zig:325)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:41)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:41)
	at io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:32)
	at webapp.tier.resource.ActiveMqResource_Subclass.publish(ActiveMqResource_Subclass.zig:729)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:151)
	at org.jboss.resteasy.core.MethodInjectorImpl.lambda$invoke$3(MethodInjectorImpl.java:122)
	at java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:616)
	at java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:628)
	at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:1996)
	at java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:110)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:122)
	at org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:594)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:468)
	at org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$2(ResourceMethodInvoker.java:421)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:363)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:423)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:391)
	at org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invoke$1(ResourceMethodInvoker.java:365)
	at java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:995)
	at java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2137)
	at java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:110)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:365)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:477)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:252)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:153)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:363)
	at org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:156)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:238)
	at io.quarkus.resteasy.runtime.standalone.RequestDispatcher.service(RequestDispatcher.java:73)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.dispatch(VertxRequestHandler.java:120)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.access$000(VertxRequestHandler.java:36)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler$1.run(VertxRequestHandler.java:85)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426)
	at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
	at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
	at java.lang.Thread.run(Thread.java:748)
	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:527)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)

Enhance Alerting

Description

when jenkins job is faild

  • send mail
  • send chat to slack or rocket chat

use loki

alerting by log level(warning, severe, fatal)
alerting by thresholds(cpu, mem, disk)
alerting by kubernetes stasus(pod not runing, node not ready)

NoClassDefFoundError: org/apache/log4j/Logger

Expected

no error

Actual

Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger

Logs

$ kubectl logs -f hazelcast-mysql-quarkus-6945c7fdc8-ffpsc                                                           (git)-[master]
exec java -Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager -Duser.timezone=Asia/Tokyo -Dhazelcast.logging.type=log4j -javaagent:/opt/agent-bond/agent-bond.jar=jmx_exporter{{9779:/opt/agent-bond/jmx_exporter_config.yml}} -XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MinHeapFreeRatio=20 -XX:MaxHeapFreeRatio=40 -XX:+ExitOnOutOfMemoryError -cp . -jar /deployments/app.jar
00:46:51 INFO  [AppLifecycleBean] (main) The application is starting...
Exception in thread "pool-4-thread-1" java.lang.NoClassDefFoundError: org/apache/log4j/Logger
	at com.hazelcast.logging.Log4jFactory.createLogger(Log4jFactory.java:29)
	at com.hazelcast.logging.LoggerFactorySupport$1.createNew(LoggerFactorySupport.java:32)
	at com.hazelcast.logging.LoggerFactorySupport$1.createNew(LoggerFactorySupport.java:30)
	at com.hazelcast.util.ConcurrencyUtil.getOrPutIfAbsent(ConcurrencyUtil.java:125)
	at com.hazelcast.logging.LoggerFactorySupport.getLogger(LoggerFactorySupport.java:38)
	at com.hazelcast.logging.Logger.getLogger(Logger.java:110)
	at com.hazelcast.logging.Logger.getLogger(Logger.java:64)
	at com.hazelcast.config.AbstractXmlConfigHelper.<clinit>(AbstractXmlConfigHelper.java:54)
	at webapp.tier.service.ConnectHazelcast.getInstance(ConnectHazelcast.java:35)
	at webapp.tier.service.HazelcastService.subscribeHazelcast(HazelcastService.java:38)
	at webapp.tier.events.TaskExecute.run(TaskExecute.java:13)
	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)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger
	at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 14 more

jaeger metrics to grafana dashboard

Description

ideas:

  • jaeger_spans_received_total
  • jaeger_spans_saved_by_svc_total
  • jaeger_traces_received_total
  • jaeger_traces_saved_by_svc_total
  • vendor_jaeger_tracer_finished_spans_total

Related links

  • xxx

change quarkus log unknown to info

Description

quarkus info log appears unknown flag in prometheus & grafana loki.
need to apply trigger quarkus application log format in loki promtail.

Related links

  • xxx

Disable SmallRye OpenAPI

Description

SmallRye OpenAPI

Document your REST APIs with OpenAPI - comes with Swagger UI

io.quarkus:quarkus-smallrye-openapi

Related links

  • xxx

Install kafka

Description

add new service: Apache Kafka on default namespace

  • create kubernetes svc
  • create jaxrs-*-quarkus
  • add nginx webpage
  • update postmannewman e2e test
  • add rundom-publish
  • add exporter
  • grafana dashboard
  • update README.md

Related links

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.