Springboot JMX 모니터링 추가

5767 단어 SpringJava
Springboot Java 응용 프로그램 시작 스 크 립 트, 설정
-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=<<port>> -Dcom.sun.management.jmxremote.password.file=<<path>> -Dcom.sun.management.jmxremote.ssl=false 

Password file:
controRole #########
monitorRole #########

스프링 어 플 리 케 이 션 설정
public class BusinessAspect {
	private semaphore;
	@Bean(name="semaphorePermitNum") 
	public Semaphore getSemaphore{
		return semaphore;
	}

	@Around()
	pbulic object execute() {
		................
		semaphore.tryAcquire(1, 10, TimeUnit.MINUTES) {
			..................
		}
	}
}

package com.test;
@Component
@MangeResource(objectName = "com.test:name=RefreshSemaphorePermitMBean")
public class RefreshSemaphorePermitMBean {
	@Autowired
	@Qualifier("semaphorePermitNum") 
	private Semaphore semaphorePermitNum;
	
	@MangeAttribute(description = "increase semaphore permit number")
	public void setIncreaseSemaphorePermitNum(int permitNum) {
		semaphorePermitNum.release(permitNum);
	}
}

그리고 Jconsole 을 사용 하면 JMX 가 있 는 주소 와 포트 를 연결 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기