본문 바로가기

aws-cli 이용하여 특정 tag 에 해당하는 ec2 instance 의 private IP 알아내기 AWS 매뉴얼을 확인하면 된다 https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html describe-instances — AWS CLI 1.18.97 Command Reference Note: You are viewing the documentation for an older major version of the AWS CLI (version 1). AWS CLI version 2, the latest major version of AWS CLI, is now stable and recommended for general use. To view this page for the AWS CLI version 2, click ..
git branch 전환을 좀 더 간편하게 gcop() { git branch -a | grep -v remotes | grep "$1" | head -n 1 | xargs git checkout } `~/.zshrc` 파일에 위 함수를 선언하기. 그러면 `gcop API-1000` 과 같이 편하게 브랜치의 부분 이름으로 전환을 할 수 있다.
맥에서 특정 프로그램 때문에 '복구할 수 없는 오류' 뜰 때 어제 saaspass 라는 맥용 앱을 잠깐 깔았다가 지웠고, 맥을 끄고 퇴근했는데 오늘 아침에 부팅 후에 '복구할 수 없는 오류' 라면서 로그인 화면에 진입이 안 되서 잠깐 패닉이 왔다. 업무상 휴대폰으로 saaspass 앱을 써야하는 일이 빈번한데, 맥용 앱을 쓰면 모바일을 대체할 수 있을까해서 설치해본건데 기대대로 되지 않아서 바로 지웠다. 그런데 정식 언인스톨러로 삭제했음에도 불구하고 앱이 지워지면서 덜 지워진 게 있었나본데, 다행히 복구모드에서 auth.db 파일 삭제를 통해 간단히 해결이 됐다. 강제 종료 -> 부팅을 누른 직후 Cmd + R 꾹 누르고 있기 -> 복구화면에서 터미널 띄우기 -> `rm /Volumes/Macintosh HD/var/db/auth.db` -> 재부팅
Rails + Sidekiq 에서 Retrying Jobs 를 rails console 에서 한 번에 kill 하기 rs = Sidekiq::RetrySet.new rs.select { |job| job.args[0]['job_class'] == 'SomeNameSpace::SomeModule::SomeClassName' && job.args[0]['arguments'][0] == 'target job arg.' } .sample(remaining_1_count) .each { |job| job.delete }
Google maps API 에 Signature 추가를 위한 URL Signing Secret 찾기 어딨는지 위치를 한참 못찾아서, 나중에 또 헤맬까봐 기록해둠 진입점 : API 및 서비스 > 대시보드 > Maps Static API > URL 서명 보안 비밀 https://console.cloud.google.com/google/maps-apis/apis/static-maps-backend.googleapis.com/staticmap?project=project_name
Rspec 에서 "여러" 인스턴스가 지정한 메소드를 실행하는지에 대한 Assertion 이번에 rails 에서 aws-sdk gem 을 이용하여 sns 를 사용하는 코드를 만들고 있다. 그런데 어떠한 이유로 aws 의 상태가 좋지 않거나, 인터넷 상태가 좋지 않는 등의 이유로 해당 로직이 실패할 수 있을 것 같아, begin ~ rescue 문법을 이용해 retry 로직을 구현하였다. begin 블럭안에서 처리하는 로직에서 Aws::SNS::Topic 클래스의 인스턴스를 retry 할 때마다 새로 생성하도록 했는데 (처음에는 singleton 으로 했다가, thread safeness 를 보장한다는 내용을 찾을 수 없어서, local variable 로 매번 인스턴스 생성하도록 처리하게 하였음) 여러 인스턴스가 생긴 것에 대해서 Rspec 에서는 자주 쓰이는 expect 나 expect_a..
게으름의 경고 개발자로 일을 하다보면, 해결해야할 문제를 실제보다 작게 판단하게 되는 경우가 없어야 함에도 불구하고, 업무를 만만하게 보는 오류에서 완전히 자유롭지 못하다. 최근 이직한 회사에서 처음 접한 언어/프레임워크를 쓰며 도메인 지식이 부족한 것과는 별개로, 업무를 하면서 놓치는 부분이 많다는 것을 느끼고 있다. 왜 놓치는 걸까? 아마 사람의 본능이 게으르기 때문일거다. 한 번 더 확인하고, 테스트를 몇번 더 해보기만 해도 이런 류의 실수는 많이 줄일 수 있을텐데 그 게으름 때문에 결국 문제를 일으키고야 만다. 자기 자신을 믿지 않는 것도 문제겠지만. 자기 자신을 잘못 믿는 것만큼 위험한 것이 이 세상에 더 있을까? 최근 몸의 아픈 신호를 핑계로 나의 슬럼프가 찾아오지 않기를 바라며 나의 잘못을 숨기고 싶었던 ..
Rspec 에서 어떤 Mailer 를 이용하여 발송될지에 대한 테스트 it '메일의 종류는 A 메일이다' do expect { subject }.to have_enqueued_job.on_queue('mailers').with('AMailer', any_args) end 간단한 건데도, 삽질을 좀 많이 했네. rails 에서의 mail 발송(deliver 메소드)은 결국 queue 를 통해서 이뤄지므로, queue 에 넣는 내용을 확인하면 된다. "mailers" 라는 이름의 큐로 enqueue 될 땐, Mailer 클래스의 이름이 전달인자 중 가장 처음으로 들어가기 때문에, with 메소드의 전달인자로 mailer 이름 문자열을 넣어주면 된다.