본문 바로가기

전체 글272

Python - snake_case, camel_case, upper_case naming style 이란 코드 네이밍은 서로 몇가지 규칙을 개발자들 사이에서 코드 가독성과 공유시 보다 이해가 쉽도록 하는데 있다. 필수도 지킬 필요는 없지만, 동일한 규칙을 사용하게 되면, 서로 다른 개발자가 개발한 코드라도 이해도가 높아지고 코드의 완성도가 높아지기 때문에 되도록이면 규칙을 정해서 사용하는 것이 좋다. 오늘은 Python 의 Linting highlights syntactical and stylistic problems와 Code Quality 로 활용할 수 있는 Linting 기능을 이용하면 Snake_case Name 경고를 볼 수 있는데, Python에서 추천하는 Code Naming인 Snake Case와 그외 많이 사용하는 Camel Case, 그리고 Upper Case에 대해서 정리해 보겠다. Sn.. 2021. 8. 24.
Python - Boto3 lib paginator 통한 S3 대량 데이터 가져오기 Boto3 라이브러리는 Python에서 AWS 리소스를 사용하기 위해 가장 많이 사용되는 라이브러리로 여기에서 최근 알게된 팁을 하나 정리해 본다. 아마 가장 많이 사용하는 기본적인 코드 방식은 다음과 같을 것이다. import boto3 client = boto3.client('s3') my_bucket = s3.Bucket('bucket_name') for file in my_bucket.objects.all(): print(file.key) 위 코드를 통해 기본적으로 쿼리를 진행하면 한번에 최대 1000개의 데이터만 가져올 수 있다. 하지만 기업에서 사용하는 데이터를 보통 더 많은 데이터를 보관하고 있기 때문에 1000개의 제한을 해결할 수 있는 방식을 추가로 제공하는데, ListObjectV2를 .. 2021. 8. 19.
Splunk Phantom REST API 기본 사용 최근 Splunk를 사용하는 회사가 늘고 있다. 여기에 Splunk회사에서 인수한 Phantom이라는 SOAR(Security Orchestration, Automation, and Response) 솔류션이 있는데, 사용법이 초반에 익숙해 지는데 시간이 좀 필요하다. 기본적인 개념은 Container라는 것이 하나의 인스턴스이고 여기에 Artifact(인스턴스 관련증적)을 넣은 사전에 만들어 놓은 App등을 통해 조사를 진행하는 방식이 기본 구조라 할 수 있다. 여기에 최근 필자가 REST API를 사용할 일이 있어 여기에 정리해 본다. 기본적으로는 https://docs.splunk.com/Documentation/Phantom/4.10.4/PlatformAPI/Using 에 어떻게 활용할 수 있는지.. 2021. 8. 19.
Microsoft 365 Defender Ninja August 2021 special edition 공개 지난 몇 개월 동안 Microsoft는 Microsoft Defender 제품과 Microsoft Cloud App Security 전반에 걸쳐 중대한 제품 발표를 했는데 해당 내용을 아래에 정리되어 있다. 아래 리소스를 통해 속도를 높일 수 있으며 마지막에 지식 확인을 통해 학습 내용을 확인할 수 있다. 또한 Ninja 여름 또는 겨울 특별판 재미 인증서를 요청이 가능하니, Ninja 인증서 컬렉션을 만들어보아도 좋겠다. https://techcommunity.microsoft.com/t5/microsoft-365-defender/microsoft-365-defender-ninja-august-2021-special-edition/ba-p/2643022 Microsoft 365 Defender Ninj.. 2021. 8. 18.
DSR(Direct Server Return)-L2DSR, L3DSR 정리 게임회사의 경우 하나의 세션을 연결하고 이를 장시간 유지하면서 플레이하는 유형의 패킷이 많다. 하지만 요즘 웹 사이트를 통한 비즈니스가 많아지면서, 네트워크 트래픽 부하를 줄이기 위한 여러가지 연구가 있는데, 그중 가장 유명하고 인상적인 Direct Server Return(이하 DSR)에 대해 정리해 보겠다. DSR이란 DSR은 네트워크 구성에 있어서, 로드 밸런서에 착신한 클라이언트의 리퀘스트 패킷을 리스폰스는 로드 밸런서를 경유하지 않고 직접(Direct)에 클라이언트에 돌려주는 방식을 의미한다. DSR은 F5개열의 BIG-IP에서는 nPath라우팅이라 불리는 기술에 해당한다. 트래픽 플로우는 다음과 같다. 가는 패킷:클라이언트 ⇒ 로드 밸런서 ⇒ 리얼 서버 돌아오는 패킷:리얼 서버 ⇒ 클라이언트 .. 2021. 8. 12.
Logstash - Debugging mode Logstash의 문제가 발생하였을때 문제점이 바로 보이지 않는 경우, 디버깅 로그를 활성화 하여 오류 부분을 쉽게 잡아 낼 수 있다. 설정 방법은 logstash를 서비스가 아닌 일반 process 방식으로 실행하는데 로드할 conf 파일의 위치를 지정해 주면 콘솔에서 쉽게 로그 확인이 가능하다. /usr/share/logstash/bin/logstash --debug -f /etc/logstash/logstash.conf --path.settings /etc/logstash 2021. 8. 11.