• platyhouse's avatar
    # Elasticsearch CLI 도구 모음 리팩토링 및 IDE 설정 추가 · b17c8324
    platyhouse authored
    ## IDE 및 프로젝트 설정
    
    ### JetBrains IDE 설정 추가
    - .gitignore: JetBrains IDE 자동 생성 파일 제외 규칙 추가
    - .idea/.gitignore: IDE 기본 무시 파일 설정
    - .idea/modules.xml: 프로젝트 모듈 구성
    - .idea/vcs.xml: Git VCS 매핑 설정
    - .idea/php.xml: PHP 8.1 언어 레벨 및 코드 분석 도구 설정
    - .idea/pty_centos.git.iml: 소스 폴더 및 네임스페이스 매핑 (platyFramework)
    - .idea/inspectionProfiles/Project_Default.xml: JSHint 검사 활성화
    - .idea/jsLinters/jshint.xml: JSHint 린터 설정
    
    ### Claude Code 가이드 추가
    - CLAUDE.md: ptyElastic* 스크립트 작성 규칙, 라이브러리 구조, 설정 파일 형식 문서화
    
    ## Elasticsearch CLI 스크립트 리팩토링
    
    ### 공통 라이브러리 추가
    - ptyLibrary_PHP/cli/ptyCliOptionParser.php: CLI 인자 파서 (positional/options 분리)
    - ptyLibrary_PHP/elastic/ptyElasticConfig.php: Elasticsearch 설정 로더 및 연결 관리
    
    ### 인덱스 조회 도구 개선
    - ptyElasticGetIndex → ptyElasticGetIndex.php 리네임:
      - platyFramework 네임스페이스 적용
      - ptyCliOptionParser, ptyElasticConfig 사용으로 코드 간소화
      - --elastic, --verbose, --limit, --help 옵션 추가
      - 직접 cURL 호출 대신 Elastic 클라이언트 사용
    
    ### 인덱스 목록 도구 재작성
    - ptyElasticGetIndexs 삭제 및 ptyElasticGetIndexs.php 신규 작성:
      - 기존 220줄 → 168줄로 간소화
      - 공통 라이브러리 사용으로 중복 코드 제거
      - 동일한 옵션 체계 적용
    
    ### 인덱스 초기화 도구 개선
    - ptyElasticTruncateIndex → ptyElasticTruncateIndex.php 리네임:
      - 공통 패턴 적용 (네임스페이스, 옵션 파서, 설정 로더)
      - 안전 확인 프롬프트 유지
    
    ### MySQL 데이터 업로드 도구 추가
    - ptyElasticUploadFromMysql.php: MySQL 테이블 데이터를 Elasticsearch에 벌크 업로드하는 도구
    
    ## 라이브러리 개선
    
    ### Elastic.php 클라이언트 개선
    - ptyLibrary_PHP/elastic/Elastic.php:
      - setDebug() 메서드 추가로 상세 로그 제어 가능
      - 디버그 모드에서만 요청/응답 로그 출력
    
    ## Git 서브트리 관리
    
    ### 서브트리 관리 스크립트 추가
    - ptyGitSubtree: ptyLibrary_PHP 서브트리 push/pull 자동화 스크립트
    b17c8324
ptyElasticUploadFromMysql.php 24.2 KB