시뮬레이션 로깅 - AWS RoboMaker

지원 종료 알림: 는 2025 AWS 년 9월 10일에 에 대한 지원을 중단합니다 AWS RoboMaker. 2025년 9월 10일 이후에는 AWS RoboMaker 콘솔 또는 AWS RoboMaker 리소스에 더 이상 액세스할 수 없습니다. 컨테이너화된 시뮬레이션 실행을 돕기 AWS Batch 위해 로 전환하는 방법에 대한 자세한 내용은 이 블로그 게시물을 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

시뮬레이션 로깅

시뮬레이션 작업에서 출력 파일 및 기타 아티팩트를 캡처하기 위해 사용자 지정 업로드를 구성할 수 있습니다. 로봇 애플리케이션과 시뮬레이션 애플리케이션에 대한 사용자 지정 업로드를 구성할 수 있습니다. 사용자 지정 업로드를 구성하면 지정한 파일이 시뮬레이션 작업에서 사용자가 제공한 Amazon S3 시뮬레이션 출력 위치로 업로드됩니다. 이는 시뮬레이션 실행 중에 생성된 애플리케이션 출력을 검토 또는 분석하거나 아티팩트를 재사용하려는 경우에 유용할 수 있습니다.

사용자 지정 업로드를 구성하려면 먼저 시뮬레이션 작업의 Amazon S3 출력 대상을 제공해야 합니다. AWS RoboMaker 는 지정한 이름을 사용하여 일치하는 파일을 폴더에 업로드합니다. 일치하는 파일은 모든 시뮬레이션 작업 도구가 종료될 때 업로드되거나 생성된 후 제거되면 업로드될 수 있습니다.

기본 업로드 구성은 비활성화되지 않는 한 사용자 지정 업로드 구성에 자동으로 추가됩니다. 기본 업로드 구성은 ROS 및 Gazebo 기본 로깅 출력을 업로드합니다. 이렇게 하면 업로드된 과거 시뮬레이션 작업 출력 구성 ROS 및 Gazebo 기본 로깅 출력과의 호환성이 유지됩니다. 콘솔에서 시뮬레이션 작업을 구성할 때 기본 업로드 구성을 비활성화할 수 있습니다. false 에서 를 CreateSimulationJob useDefaultUploadConfigurations로 설정하여 끌 수도 있습니다API.

시뮬레이션 애플리케이션은 단일 128GB 파티션에 추가되며 사용자는 파티션에 대한 쓰기 권한을 가집니다.

사용자 지정 업로드 구성 추가

사용자 지정 업로드 구성을 생성하려면 Amazon S3에서 파일이 업로드되는 위치를 지정하는 이름 접두사, 업로드할 파일을 지정하는 Unix 글로브 경로, 파일 업로드 시기를 지정하는 업로드 동작을 지정해야 합니다.

이름

이름은 Amazon S3에 파일이 업로드되는 방식을 지정하는 접두사입니다. 최종 경로를 결정하기 위해 시뮬레이션 출력 위치에 추가됩니다.

예를 들어 시뮬레이션 출력 위치가 s3://amzn-s3-demo-bucket이고 업로드 구성 이름이 robot-test인 경우 파일이 s3://amzn-s3-demo-bucket/<simid>/<runid>/robot-test에 업로드됩니다.

경로

경로는 업로드할 파일을 지정합니다. 표준 Unix 글로브 일치 규칙은 다음 조건에 따라 허용됩니다.

  • 경로는 /home/robomaker/ 또는 /var/log로 시작해야 합니다.

  • 경로에는 역방향 경로 표현식(/..)이 포함되어서는 안 됩니다.

  • 심볼릭 링크는 따르지 않습니다.

  • 경로에서 **슈퍼 별표로 사용할 수 있습니다. 예를 들어 /var/log/**.log를 지정하면 /var/log 디렉터리 트리의 모든 .log 파일이 수집됩니다.

    표준 별표를 표준 와일드카드로 사용할 수도 있습니다. 예를 들어, /var/log/system.log*/var/log에서 system.log_1111, system.log_2222 등의 파일과 일치합니다.

업로드 동작

다음 업로드 동작 중 한 가지를 선택할 수 있습니다.

  • 종료 시 업로드(UPLOAD_ON_TERMINATE)는 시뮬레이션 작업이 종료 상태가 되면 경로와 일치하는 모든 파일을 업로드합니다. AWS RoboMaker 는 최대 60분 동안 로그를 업로드하려고 시도합니다.

    AWS RoboMaker 는 시뮬레이션에서 실행되는 모든 도구가 중지될 때까지 파일 업로드를 시작하지 않습니다.

  • 자동 제거를 통한 업로드 롤링(UPLOAD_ROLLING_AUTO_REMOVE)은 생성된 경로와 일치하는 모든 파일을 업로드합니다. 경로는 5초마다 확인됩니다. 파일이 업로드되면 소스 파일이 삭제됩니다. 파일이 삭제된 후 같은 이름의 새 파일이 생성되면 이전에 업로드한 파일을 대체합니다. AWS RoboMaker 은 시뮬레이션에서 실행 중인 모든 애플리케이션이 중지되면 파일에 대한 최종 확인을 수행합니다.

    자동 제거를 통한 업로드 롤링은 롤링 로그를 업로드하는 데 유용합니다. 경로 글로브에 포함되지 않는 “활성” 파일에 출력을 쓰거나 스트리밍합니다. 활성 파일에 기록이 끝나면 파일을 경로 글로브에 포함된 위치로 롤링하여 업로드 및 제거합니다.

    이 설정은 시뮬레이션 작업의 스페이스를 절약하는 데 도움이 될 수 있습니다. 시뮬레이션 작업을 종료하기 전에 파일에 액세스하는 데에도 도움이 될 수 있습니다.

시뮬레이션 작업 파티션 크기는 128gb입니다. 어떤 이유로든 시뮬레이션 작업이 종료되면 는 사용자 지정 업로드 구성에 지정된 모든 파일을 업로드하려고 AWS RoboMaker 시도합니다.

에서 생성한 환경 변수 AWS RoboMaker

AWS RoboMaker 는 다음 시뮬레이션 작업 환경 변수를 정의합니다.

  • AWS_ROBOMAKER_SIMULATION_JOB_ID

  • AWS_ROBOMAKER_SIMULATION_JOB_ARN

  • AWS_ROBOMAKER_SIMULATION_RUN_ID

애플리케이션 또는 명령줄에서 이러한 변수를 가져올 수 있습니다. 예를 들어 Python에서 현재 시뮬레이션 작업 Amazon 리소스 이름(ARN)을 가져오려면 를 사용합니다os.environ.get("AWS_ROBOMAKER_SIMULATION_JOB_ARN").

시뮬레이션 작업에 Amazon Simple Storage Service 출력 버킷을 지정한 경우 환경 변수를 사용하여 출력 경로를 찾을 수 있습니다. 는 출력을 에 AWS RoboMaker 씁니다s3://bucket-name/AWS_ROBOMAKER_SIMULATION_JOB_ID/AWS_ROBOMAKER_SIMULATION_RUN_ID. 이를 사용하여 코드 또는 명령줄에서 Amazon S3의 객체를 관리합니다.

AWS RoboMaker 또한 는 로봇 및 시뮬레이션 애플리케이션 컨테이너가 서로 통신CreateSimulationJobRequest할 수 있도록 에 설정된 특정 환경 변수를 처리합니다. 자세한 내용은 ROS 컨테이너 FAQ 단원을 참조하십시오.