설정 파일에서는 블록체인에서 데이터를 가져올 주기와 웹 서버 접속 주소를 확인하고 변경할 수 있다. byfn 네트워크 모니터링을 위해 scrape_configs의 job_name과 targets 속성을 아래와 같이 수정한다.
targets: 모니터링할 피어와 오더러 정보를 입력. 예제에서는 4개의 peer와 1개의 orderer를 대상으로 모니터링을 진행
# file: prometheus.yml# my global configglobal:scrape_interval:15s# Set the scrape interval to every 15 seconds. Default is every 1 minute.evaluation_interval:15s# Evaluate rules every 15 seconds. The default is every 1 minute.# scrape_timeout is set to the global default (10s).# Alertmanager configurationalerting:alertmanagers: - static_configs: - targets:# - alertmanager:9093# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.rule_files:# - "first_rules.yml"# - "second_rules.yml"# A scrape configuration containing exactly one endpoint to scrape:# Here it's Prometheus itself.scrape_configs:# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name:'prometheus'scrape_interval:10s# metrics_path defaults to '/metrics'# scheme defaults to 'http'.static_configs: - targets: ['localhost:9090'] - job_name:'hyperledger_metrics'scrape_interval:10sstatic_configs: - targets: [‘peer0.org1.example.com:9443’,‘peer1.org1.example.com:9443’,‘peer0.org2.example.com:9443’,‘peer1.org2.example.com:9443’,‘orderer.example.com:8443’]
cd..cdfirst-network# Bring up the byfn network./byfnup# Run the prometheus-server containersudodockerrun-d--nameprometheus-server-p9090:9090--restartalways-v/home/bhlee/my_github/fabric_samples/prometheus-2.16.0.linux-amd64/prometheus.yml:/prometheus.ymlprom/prometheus--config.file=/prometheus.ymldockerps
byfn과 prometheus-server 연결
프로메테우스와 byfn을 연결하기 위해서 아래와 같은 형식의 docker network connect 명령어를 이용한다. 네트워크의 이름은 docker inspect 명령을 통해 찾을 수 있다.
docker network connect <network_name> <container ID of prometheus-server>