Recent Posts

#TIL elixir에서 erlang 파일 로그 핸들러를 사용하기

1 minute read

elixir 1.15에서 erlang logger 와의 통합이 이뤄졌다. 그래서 elixir에서 erlang의 파일 로거 핸들러를 손쉽게 사용할 수 있다. elixir logger backend가 deprecated 돼서 설정을 바꾸는게 귀찮았지만 erlang의 파일 로거를 사용할...

#TIL #elixir 실패한 테스트 케이스를 손쉽게 확인하는 우회책

less than 1 minute read

Elixir에서 자식 프로젝트가 여러 개 있는 프로젝트를 Umbrella projects라고 부른다. C++/C#에서 프로젝트가 여러 개 있는 솔루션과 비슷하다. mix test 태스크를 실행하면 하위 프로젝트에 있는 test가 차례로 실행된다. 테스트가 실패하면 에러 exit c...

#TIL systemd로 프로세스를 관리하고 systemd-journald로 로그를 본다

less than 1 minute read

Heroku를 떠나기로 했다. Tbot-800.ex은 세심한 관리가 필요한 프로그램이 아니라서 Linux 인스턴스에서 직접 관리해도 충분하다. 두 가지가 필요하다. 프로그램이 크래시로 종료하거나 재부팅을 했을 때, 자동으로 실행해야 한다. 지난 로그도 적당히 볼 수 있으면 좋겠다....

#TIL Elixir for 포괄 구문(Comprehensions)

less than 1 minute read

Elixir의 for 포괄 구문(Comprehensions)을 잘 사용한 코드 예제를 ’Testing Elixir (Andrea Leopardi, Jeffrey Matthias, 2021)’ 책에서 봤다.

#TIL sudo 명령어에서 유지할 환경 변수 설정

less than 1 minute read

시키는대로 설치 명령을 입력해도 실패해서 알아보니 환경 변수 문제였다. 그냥 sudo 커맨드를 사용하면 환경 변수로 설정된 프록시(proxy) 서버 세팅이 적용되지 않았기 때문이다. sudo -E 커맨드로 실행하면 환경 변수를 유지해서 설치했던 기억이 있다. 매번 sudo -E 를...

#TIL git diff 문맥 파악에 도움을 주는 hunk-header

less than 1 minute read

git diff에서 변경된 줄을 나타내는 Hunk를 보여준다. @@ -418,6 +418,8 @@ 이런 식으로 라인 넘버를 같이 표시해 준다. 여기에 header를 출력해 변경 사항에 정보를 제공한다. 예를 들어 header에 포함된 함수나 클래스 선언을 보여줄 수 있다. 라인 넘...

#TIL #elixirlang mix.lock에 있지만 사용하지 않는 의존성 검사

1 minute read

mix.exs 파일을 수정해 의존성을 추가해서 라이브러리를 사용하다가 mix.exs 파일에서만 의존성을 제거한다. mix.lock 파일에서도 지워야하는데, 그대로 놔뒀다. 이제 mix.lock 에 있어서 다운로드하지만 사용하지 않는 쓰레기 의존성이 생겼다.