All Articles

TIL&TEL 21.04.05~21.04.11

TIL( Today I Learned)

21-04-05 월

  • cron job 확인

    • 동작확인
    • 로거 수정
  • django 동작 수정
  • VM 운영 건의사항 -> docker 도입으로 처리한다.
  • pytest 적용

21-04-06 화

21-04-07 수

  • Elastic Search Indexing 자동화
  • ES 동작확인

    • GET /_cat/health?v
    • curl localhost:9200/_cat/health
    • curl localhost:9200/_cat/health?pretty
    • requests
    • code

          resp = requests.get( "ip:9200/<target>/_stats/doc"
          resp.json()['_all']['total']['docs']['count']
          ```

21-04-08 목

  • Auto indexing python scripting

    • 코드 정리
    • test 코드 만들기

      • 테스트 가능하게 만들자 만들자 만들자
      • test config 분리
      • 실행 변수들 들고오기

21-04-09 금

  • 코드 정리
  • multi user activity 찾아보기

    • whiteboard pattern
    • pub/sub pattern

TEL (Trial and Error Log)

21-04-08

  • ERROR: django PRODUCT 옵션으로 동작이 안됨

    • SITUATION: 잘 되던, 다른 환경으로 django 동작이 안된다
    • REASON: settings에서 djagno_extension을 지웠다.
    • SOLUTION:

      • settings 변경
  • ERROR: 전역 변수를 마구 선언하면 테스트 하기가 어려워진다.

    • SITUATION: test code 작성중
    • REASON: 낮은 레벨의 함수에서 전역 변수를 사용하고 있으면 전체 함수를 다들고 와야 한다.
    • SOLUTION:

      1. 해당 스코프 층에서 변수 선언 or with context manager 사용하기
      2. 전역 변수 없앰
      3. 모델 만들어서 데이터 담기

21-04-09

  • ERROR: python import module 실행시 module에 작성한 코드들이 함께 동작한다.

    • SITUATION: main에 관련된 함수 작성후 별도 테스트 중
    • REASON: 실행 블록이 노출되어 있다.
    • SOLUTION:

      • code

        if __name__ == '__main__':
        pass
        #블록 안에 넣어준다
  • ERROR: pytest 실행시 같은 폴더에 있는 파일을 읽지 못한다.

    • SITUATION:
  • REASON: pytest.ini 가 위치한 곳을 root path 로 인식한다.
  • 실행하는 곳에서 절대 경로로 입력하면 못읽는다.

    • 이는 pytest에서 의도한 바이다.
  • SOLUTION:

    • 불러오는 파일을 절대 경로로 입력한다.

      • root/some/where/file/located/filename.json <- filename.json
  • ERROR: : shell script command not found

    • SITUATION: shell script 작성하고 테스트중
    • REASON: if 문 비교 괄호( [ ] ) 에는 앞뒤로 스페이스가 존재해야 한다.
    • SOLUTION:

      • 스페이스 추가 한다.
  • ERROR: 잘 되던 pytest 동작이 안된다.

    • SITUATION: pytest 돌리던, shell을 끄고 새로 키니 동작하던게 안된다.
    • REASON:

      • PYTHONPATH 날라감
    • SOLUTION:

      • root directory에 confest.py 추가
      • 해당 folder에 init.py 추가