본문 바로가기
IoT

Mosquitto Pub/Sub 테스트와 Logging설정

by zemba 2021. 11. 8.
반응형
SMALL

우선 지난번 포스팅에서 라즈베리파이에 Mosquitto Broker를 설치를 완료하였습니다.

(혹시 설치과정을 보시고 싶으신분들은 이 포스팅을 참고 하시길 바랍니다. https://zemba.tistory.com/15?category=980988)

 

MQTT Broker 설치 ( Mosquitto )

이제 MQTT Broker 서버를 설치를 해보려고 합니다. MQTT란 메세징 프로토콜인데 (Message Queuing Telemetry Transport) TCP/IP 프로토콜 위에서 동작한다고 합니다. 경량 메시지 전송 프로토콜이기 때문에 IOT에..

zemba.tistory.com

 

그럼 이제 서버에서는 로그를 확인하면서 서버를 관리해야하고 각 모듈에서는 MQTT메세지를 발행하고 구독하여 메세지를 받을수 있는 환경을 테스트해봐야합니다. 

우선 MQTT Broker에 로그를 기록하는게 우선일것 같네요. 현재 브로커가 정상 동작중인지 확인을 해봅니다.

mosquitto 구동 확인

잘 구동중인것을 확인했습니다. 어 그런데 약간 이상한것은 -c 옵션 뒤에 확장명이 *.conf로 끝나는 파일을 뭔가 참조하는것 같은 느낌이 많이 드는 형태 입니다. 그래서 해당 conf파일을 어떻게 사용하는지에 대해서 좀 찾아보았습니다.

https://mosquitto.org/man/mosquitto-conf-5.html (공식문서인듯...)

 

mosquitto.conf man page

Name mosquitto.conf — the configuration file for mosquitto Synopsis mosquitto.conf Description mosquitto.conf is the configuration file for mosquitto. This file can reside anywhere as long as m

mosquitto.org

제가 영어를 잘하진 못합니다 ㅎㅎ 하지만 우리에겐 구글이라는 엄청난 능력을 가진 친구가 있죠?! 번역을 돌려봅니다.

중간쯤 보니까 로그를 기록하는 옵션에 대한 부분이 있는것을 확인했습니다.

log_dest설정을 사용하면 별도의 파일로도 로그를 추출할수가 있고 여러 옵션들을 추가로 줄수 있는 모양입니다.

우선 특정 경로에 로그를 남기기 위해서 저는 제 홈폴더에 별도로 생성하였습니다.

로그가 기록될 위치

네 저는 이 경로에 로그를 남길 예정입니다. 이제 conf파일에 내용을 추가해 보겠습니다.

conf파일의 경로는 아까 프로세스를 확인할때 어디있는지 친절하게 알려줬기때문에 해당 파일을 열어봅니다.

sudo vi /etc/mosquitto/mosquitto.conf

mosquitto conf 파일 내용

오호...이미 로그파일을 별도의 경로에 저장하는 설정이 있었습니다. 하지만 저는 별도의 경로로 지정할것이기 때문에 해당경로를 변경해줄겁니다. (제맘이니까요~ㅋ)

log_dest file /home/zemba/mqtt/log/mosquitto.log

설정 파일을 변경하였으니 재시작을 해야할것입니다. 재시작을 해줍니다

Restart 완료

재시작이 완료 되었으면 이제 한번 메세지를 보내고 받고를 할때 로그를 확인해 보려고 합니다.

우선 subscriber를 먼저 구동시켜 대기합니다.

이후 publishing을 한번 진행해보겠습니다.

잘 보냈습니다. 그럼 클라이언트에서 정상적으로 수신했는지 확인해 보겠습니다.

Hi! 라는 메세지를 정상적으로 받았습니다. 그럼 로그는 기록이 되었는지 확인을.....해보려고 했지만.... 해당경로에 파일이 아무것도 없었습니다. 흠....혹시 그럼 기존 경로에는 로그가 있을까? 라는 생각으로 해당 파일경로를 확인해보았더니 로그가 남아있었습니다.

그래서 로그의 내용을 살펴 보았습니다.

음 남아있군요... 설정파일에 경로를 변경했지만 파일은 생기지 않고 기존 로그파일에 로그가 기록되었습니다.

이부분은 왜 동작을 안했는지 확인을 별도로 해봐야겠습니다. 추가로 로그기록의 내용도 추가적으로 살펴보아야 겠습니다.

아무튼 우선 MQTT Broker의 동작은 정상적으로 수행된것을 확인해보았습니다.

다음 포스팅에서는 python을 통해서 메세지를 발행하고, 구독하여 데이터를 받아오는 내용에 대해서 포스팅을 해보도록 하겠습니다.

반응형
LIST

'IoT' 카테고리의 다른 글

MQTT Broker 설치 ( Mosquitto )  (0) 2021.11.06
RaspberryPI 3B+ OS 설치Final  (0) 2021.11.04
RaspberryPI 3B+ 무선 고정 IP 설정  (0) 2021.11.04
Raspberry 3B+ OS 준비중..ㅎ  (0) 2021.11.03

댓글