2014-06-09 1 views
1

우리는 빌드 & 배포 프로세스를 자동화하기 위해 2013 년에 TFS 빌드를 사용하고 있습니다. 이를 위해 바이너리를 중앙 위치 등으로 복사하는 것과 같은 몇 가지 작업을 수행하는 powershell 스크립트를 추가했습니다.TFS 2013 빌드 - 활성 로그에 로그 추가

프로세스 중에 로그를 추가하려면 "Write-Host"방법을 사용하십시오. 자세한 로그에 메시지를 기록하지만 빌드 프로세스 중에 IDE 자체에 표시 될 수 있도록 작업 로그에 메시지를 추가하려고합니다.

어떻게 해결할 수 있습니까?

답변

0

해당 액티비티에는 다른 액티비티가 표시됩니다. 당신이 "정상"이

+0

기본 빌드 템플릿 TfvcTemplate.12.xaml을 사용하고 있습니다. Post-build 스크립트를 통해 Powershell 스크립트를 실행하고 있습니다. 이 스크립트는 로깅 (write-host, output, verbose, warning 및 debug)에 대한 모든 유형의 출력을 사용하지만 빌드하는 동안 로그 탭에는 아무 것도 나오지 않습니다. 빌드가 완료된 후 진단 탭 아래에 만 표시됩니다. 우리가 뭔가를 놓친 건가? – SmudgerDan

+0

PowerShell에서 명시 적으로 Write-Verbose 또는 자세한 정보 수준을 높일 수 있습니다. 기본값은 방출되지 않는 보통입니다. –

0

대신 Write-Host의 ... 빌드 상세를 변경하지 않고 주 로그에 표시해야한다 "높음"의 기본값을 변경하는 경우, 당신은 당신의 기록을 작성 Write-Output 또는 Write-Error를 사용해야합니다 메시지.

Write-Host은 PowerShell을 호스팅하는 모든 컴퓨터 (PowerShell 명령 셸, PowerShell ISE 또는 .NET으로 작성된 사용자 지정 PowerShell 호스트 일 수 있음)에 씁니다. 전달 대상을 실제로 표시할지 여부는 호스트에 달려 있습니다. 반면에 Write-Output은 stdout 스트림으로 출력됩니다. Write-Error은 stderr에 쓸 것입니다.

Write-Verbose도 있으며 자세한 출력 스트림에 기록됩니다. 그러나 TFS 빌드를 사용한 경험에서 Write-Verbose의 출력은 캡처되지 않습니다.

Here is a good background explanation