[yorkie] goLand 에서 yorkie 디버깅하기

차유림·2023년 2월 9일
1

Yorkie

Yorkie 는 애플리케이션에 협업 기능을 쉽게 구현할 수 있게 해주는 서비스이다.
Figma 처럼 여러명이 접속해서 함께 디자인하거나, 문서를 편집하는 기능을 구현하고 싶을 때, yorkie에서 제공하는 기능을 사용하면 쉽게 만들 수 있다.
오픈소스로 누구나 yorkie프로젝트에 기여할 수 있다. 많관부.

디버깅하기

yorkie server는 go언어로 되어있다.

vscode를 사용한다면, vscode에서 go 디버깅하는 법  참고해주세요 :)

main func 이 있는 main package 에서 디버깅을 실행한다.
초록색 삼각화살표 클릭한 후, debug를 선택한다.

yorkie는 cobra 프레임워크를 사용해서 go cli 를 지원하고 있는데,
처음 디버깅 실행해보면 bin/yorkie 가 실행되고 아래와 같이 프로그램이 종료된다.

yorkie server를 실행해서 디버깅을 하고 싶다면, bin/yorkie server 처럼 서버를 실행해야 한다.
렌치🔧 아이콘 클릭해 config를 변경할 수 있다.
program arguments 에 server를 추가하자.


이제 다시 디버깅 실행해보면, yorkie 서버가 실행되고 디버깅을 할 수 있다.
yorkie-js-sdk 실행해서 브라우저를 띄워 yorkie 서버에 연결한 후,
콘솔창 메뉴 옆에 있는 화살표들로 차근차근 함수를 따라가보자.

테스트코드 실행하기

테스트코드도 마찬가지로 초록화살표를 눌러 디버깅을 실행할 수 있다.

yorkie 통합테스트에서는 etcd를 사용하기 때문에, docker etcd 가 실행되어 있어야 한다. 그냥 실행하면 아래와 같은 오류 발생한다. (mongo는 연결했는데 etcd를 안 열었다)

2023-02-09T16:44:55.024+0900    INFO    default MongoDB connected, URI: mongodb://localhost:27017, DB: test-yorkie-meta-1675928690
2023/02/09 16:45:00 connect to etcd: context deadline exceeded

contributing.md 에 테스트코드 실행하는 법 나와있다.

docker-compose -f docker/docker-compose.yml up --build -d
make test

goLand 처음 사용 팁

  • shift 를 빠르게 두번 누르면 메뉴창이 뜬다.
profile
🎨프론트엔드 개발자💻

0개의 댓글