Azure-Samples / aspire-app-dev-in-a-day-ko

.NET Aspire 애플리케이션을 개발해 보는 워크샵 자료입니다
https://aka.ms/aspireinadaykr
MIT License
18 stars 133 forks source link

워크샵 진행하면서 문서에 나와 있지 않은 다양한 이슈들 및 해결 방법 정리 #43

Open justinyoo opened 2 months ago

justinyoo commented 2 months ago

문서에 정리하지 않은 다양한 이슈들 및 해결 방법 보이는대로 코멘트에 올려주세요

ChoiKangM commented 2 months ago

C# 닷넷 프레임워크 사용법 질문

'변수어쩌구' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하세요. 라는 에러코드가 반복적으로 나옵니다. 해당 문제가 생기는 경우 어떻게 에러를 고쳐야할지 정리가 필요합니다(반복적으로 나오는 문제)

krsy0411 commented 2 months ago

C# 닷넷 프레임워크 사용법 질문

'변수어쩌구' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하세요. 라는 에러코드가 반복적으로 나옵니다. 해당 문제가 생기는 경우 어떻게 에러를 고쳐야할지 정리가 필요합니다(반복적으로 나오는 문제)

03-5에서 (5)번 코드에 @using Microsoft.AspNetCore.OutputCaching 이 문장 넣으라고 하더라구요

ChoiKangM commented 2 months ago

AspireYouTubeSummariser.AppHost 프로젝트의 appsettings.Development.json 파일에 들어가는 코드입니다. DeploymentName 에 대한 언급이 필요합니다

"OpenAI": {
  "Endpoint": "{{ Azure OpenAI Proxy Service Endpoint }}",
  "ApiKey": "{{ Azure OpenAI Proxy Service Access Code }}",
  "DeploymentName": "{{ Azure OpenAI Proxy Service Deployment Name }}"
}
krsy0411 commented 1 month ago

Session 04에서 배포할때 인터넷 느리면 다음과 같이 provision step에서 에러가 나더라구요. 미리 다시 명령어를 입력해서 재배포 하면 된다고 안내해주면 좋을거 같아요...!

networkIssueWhileDeploying networkIssueWhileDeploying2
krsy0411 commented 1 month ago

사전 과제 내용입니다 save-points 폴더 내 파일들은 AzureOpenAIClient라는 클래스를 사용하는데, 과제에서는 OpenAIClient라는 클래스를 사용하더라구요. 저는 코드 보면서 필요한 내용만 붙여넣는 방식으로 저스틴님 코드를 봤는데, 물론 고치는게 어렵진 않았지만 잠시 헤맸었습니다.

뭔가 저같은 사람이 있지 않을까 싶어서 댓글 남깁니다..!

before-AzureOpenAIClient

윗 사진은 연습하면서 사용했던 AzureOpenAIClient 쓸 때, 아래 사진은 과제하면서 사용했던 OpenAIClient 쓸 때 입니다

after-OpenAIClient
krsy0411 commented 1 month ago

사전 과제 내용입니다

gh secret set AZURE_OPENAI_ENDPOINT --body "{{ Azure OpenAI Proxy Service Endpoint }}" --repo {{ GITHUB_ID }}/aspire-app-dev-in-a-day-ko
gh secret set AZURE_OPENAI_API_KEY --body "{{ Azure OpenAI Proxy Service Access Code }}" --repo {{ GITHUB_ID }}/aspire-app-dev-in-a-day-ko
gh secret set AZURE_OPENAI_DEPLOYMENT_NAME --body "{{ Azure OpenAI Proxy Service Deployment Name }}" --repo {{ GITHUB_ID }}/aspire-app-dev-in-a-day-ko

이때 저는 aspire-app-dev-in-a-day-ko저장소를 사용 안 하고, 새로 과제 제출용 저장소 workshop-challenge을 생성해서 사용하였습니다. 근데 생각없이 명령어를 복붙했더니, github action으로 자동 배포할때 secret 설정에서 저장소 주소가 안 맞아서 Azure Portal에서 살펴보니 환경변수가 다 날아갔었습니다🥲🥲

저같은 실수는 하지마세요..전 멍충입니다

아래와 같이 수정해서 하니 잘 동작했습니다

warn-ghCLIsecretVarSetting
SangYoupLee commented 1 month ago

.Aspire 통합 과정에서 timeout error 가 계속 발생할 경우,

image

백엔드에서는 정상적으로 호출이 되지만, 프론트엔드에서 timeout 에러가 발생하는 경우가 있습니다.

그럴때는, ServiceDefaults -> Extension.cs 상에서

image

이렇게 timeout 설정을 대폭 늘려주시면 됩니다

만약, 해당 설정 이후에도 동일한 에러가 발생한다면 프론트 상에서 백엔드를 호출하는 코드를 수정해주시면 되는데요

image

저는 이렇게 두번 진행하고, timeout 에러가 해결되었습니다.

YoonKeumJae commented 1 month ago

아마 그럴 사람은 없겠지만 학교 계정으로 실습을 진행해야 합니다.

저는 '학생인증 완료된 체험 계정'과 '학교 이메일로 가입된 계정'을 혼동해 한참 헤메었습니다..

'학교 이메일로 가입된 계정'이 맞습니다.

justinyoo commented 1 month ago

C# 닷넷 프레임워크 사용법 질문

'변수어쩌구' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하세요. 라는 에러코드가 반복적으로 나옵니다. 해당 문제가 생기는 경우 어떻게 에러를 고쳐야할지 정리가 필요합니다(반복적으로 나오는 문제)

이 부분은 save-points 디렉토리를 뒤지면 해결 가능합니다. 이 정도 문제 해결능력은 있다고 가정하겠습니다.

justinyoo commented 1 month ago

AspireYouTubeSummariser.AppHost 프로젝트의 appsettings.Development.json 파일에 들어가는 코드입니다. DeploymentName 에 대한 언급이 필요합니다

"OpenAI": {
  "Endpoint": "{{ Azure OpenAI Proxy Service Endpoint }}",
  "ApiKey": "{{ Azure OpenAI Proxy Service Access Code }}",
  "DeploymentName": "{{ Azure OpenAI Proxy Service Deployment Name }}"
}

이 내용은 웍샵 초반에 알려줍니다.

zihyeon08 commented 1 month ago

C# 닷넷 프레임워크 사용법 질문

'변수어쩌구' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하세요. 라는 에러코드가 반복적으로 나옵니다. 해당 문제가 생기는 경우 어떻게 에러를 고쳐야할지 정리가 필요합니다(반복적으로 나오는 문제)

=> using 지시문 참조를 코드 위에 하지 않아서 생기는 문제로 save-point의 using 지시문을 참고해서 자기 코드를 수정하라고 안내하면 됩니다.

zihyeon08 commented 1 month ago

appsettings.Development.json 파일 내용 기입시 DeploymentName 에 대한 언급 => 저스틴님께서 세션 진행시 언급해주시면 됩니다! 아니면 model 명을 문서에 명시하는 것도 좋아보입니다

zihyeon08 commented 1 month ago

session 04에서 배포시 인터넷이 느리다면 'internal server error' 가 생길 수 있음 => 다시 명령어를 입력해서 재배포하세요 안내

zihyeon08 commented 1 month ago

과제 내용 수행 시 github secret 변수 설정 파트에서 리포를 aspire-app-dev-in-a-day-ko 를 사용하지 않을 경우 해당 부분 수정해야함 => 참가자가 과제 수행시 알아서 잘 할거라 생각합니다

zihyeon08 commented 1 month ago

session 3에서 백엔드에서는 정상적으로 호출 되나, 프론트엔드에서 timeout 에러가 발생할 경우에는,

  1. ServiceDefaults/Extension.cs에서 timeout 값을 대폭 늘려주세요 (약 240초)
  2. Webapp/Program.cs에서 http.BaseUri = ... 바로 아래, http.TimeOut = TimeSpan.FromSeconds(240); (약 240초)를 추가합니다.

=> 변경 전 과제 수행시 발생한 문제라 youtube summarise service에서는 해당 문제가 발생하지 않을 것 같지만, 적어놓겠습니다

zihyeon08 commented 1 month ago

학교 계정으로 실습을 진행해야 합니다. =>

  1. 이메일 초대 받으면, 엣지 브라우저의 InPrivate 모드 또는 크롬 브라우저의 In Cognito 모드로 초대 링크를 엽니다.
  2. 초대 받은 이메일로 로그인합니다. 만약 초대받은 이메일 주소에 해당하는 계정이 없으면 새로 만들어야 합니다.
  3. 이후 브라우저에서 새 프로필을 만들어 초대 받은 이메일로 로그인해서 사용합니다.

이 과정을 하나라도 제대로 수행하지 않을 경우 계정이 꼬이게 됩니다.

justinyoo commented 1 month ago

03-3: Aspire 프로젝트 빌드 및 실행하기 섹션에서 AppHost 프로젝트를 실행시켰을 때 간혹 ApiApp의 appsettings.Development.json 파일에 있는 OpenAI 관련 내용이 제대로 만들어지지 않는 경우가 있습니다.

=> 간혹 나타나는 이슈인데, 당황하지 말고, 03-6: ASP.NET Core 백엔드 API 앱의 Azure OpenAI 설정을 AppHost로 이전하기 섹션에서 1번과 2번을 먼저 한 후 다시 03-3 섹션으로 돌아가서 해 보라고 알려주세요.