inflearn logo
강의

Course

Instructor

15-day big data pilot project

3. TensorFlow Neural Network Analysis - Smart Car Anomaly Detection 4

flask에서 API호출 에러

1052

candyclara

2 asked

0

안녕하세요~선생님,

마지막 수업 "3.텐서플로를 이용한 신경망 분석 - 스마트카 이상징후 판별 4" 에서 다음과 같은 크롬에서 API호출 에러가 발생합니다.

Anaconda prompt에는 정상적으로 실행이 되는데 API호출 변수에 이상이 있는 것 같습니다.

API호출 함수를 아래와 같이 두 가지로 해보았으나 같은 에러가 발생합니다.

(1)127.0.0.1:9001/smartcar/predict?wea=2&temp=0&hum=1&arrOthCar=2&time=0&acciArea=1&drvCond=1&innCond=2&carSpd=2&steeAng=0

(2)127.0.0.1:9001/smartcar/predict?wea=2&temp=0&hum=1&arrCar=2&timeSlot=0&acciArea=1&drvCond=1&innCond=2&carSpd=2&steeAng=0

감사합니다~

빅데이터 hadoop kafka zookeeper redis flume impala 데이터-엔지니어링

Answer 8

0

candyclara

선생님 말씀대로 Python3.5로 재설치하여 성공하였습니다^^ 감사드립니다~꾸벅

 Success Request.PNG

0

빅디

안녕하세요! 빅디 입니다.

이런 문제는 현장에서 매우 빈번하게 발생하곤 합니다.

필드에선 한 서버에 자바 or 파이썬 등의 환경을 공유 하는 여러 시스템들을 구성 하는 경우도 많은 데요.

이땐 누군가가 파이썬 버젼을 올려 버리면, 기존 버젼의 라이브러리에서 작동하던 다른 시스템들의 프로그램에 문제가 발생하는게 비일비재 일어납니다.

문제는 이 원인을 찾는게...간단히 해결되기도 하지만, Candyclara님처럼 돌아돌아 많은 시간을 소모 하는 경우가 많다는 것 입니다. ^^;;

그래서 파일럿 프로젝트에서 이런 경험을 직간접적으로 얻는 것이 아~주 중요 합니다.

-빅디 드림

0

candyclara

선생님 말씀주신대로 print()추가하고, Chrom 브라우져에서 API를 호출하였습니다.

그런데 def predict()내에서는 print()문이 작동하지 않습니다,,

Bad Request_VSCode.PNG

0

빅디

네~ 파이썬 버젼이 좀 높네요!

의심 되는건 26번째줄의 flask.request.args 로 보입니다.

우선 아래처럼 해보시고요..

관련방법이 여러가지라 테스트를 해봐야 할것같습니다. - 빅디 드림

 

request.get_json(force=True,silent=True)

0

candyclara

이번에는 VSCode로 실행하여 로그를 보내드립니다~

Bad Request_VSCode.PNG

0

빅디

네~ candyclara 님!

위 VSCode 환경에서 아래 내용으로 테스트좀 해봐 주세요!!!

 

VSCode에서 앞서 작업 했었던 print() 문을 추가해 주시고요,

Chrom 브라우져에서 API를 호출 하고요,

다시 VSCode로 와서 로그의 스크린샷 부탁 드립니다.

추가로 flask 실행환경에서 파이썬과 플라스크의 Version도 아래 명령으로 확인 부탁 드립니다~

$ python --version

$ flask --version

 

특별히 큰 문제로 보이지는 않습니다. 아마도 환경 문제인거 같은데요..

하나씩 문제의 원인을 좁혀 보시죠~ ^^

-빅디 드림

 

0

candyclara

선생님 죄송한데 제가 아직 실력이 부족하여 "Flask 콘솔의 로그"를 어디서 확인하는지 모릅니다 ㅠ

Bad Request.PNG

0

빅디

아~ 네 콘솔은 별게 아니고 로그가 찍히는곳을 말합니다.^^

Step 1~3 은 api 호출후 찍히는 로그라서, 브라우져에서 url입력후, 앞서 처럼 hello bigdata 가 찍힌 창의 스크린샷 부탁 드립니다~

-빅디 드림

0

candyclara

Bad Request.PNG

0

빅디

아~ 네! candyclara님!

제가 요청 했던 사항이 좀 명확하지 않았네요...^^;;;;

저렇게 Bad Request가 난 상태에서 Flask 콘솔의 로그를 보기위한 스크린샷을 확인 부탁 드립니다.

확인하고 싶은 사항은 Flask or Rest API의 URI 문제인지, 파라미터 or Model의 문제인지를 확인해 보고 싶어서 입니다. 만약 파라미터 또는 DNN모델이 문제라면 ".........Step2"까지 로그가 찍히고 Error로그가 찍힐 겁니다.

확인 부탁드려요~ -빅디 드림

0

candyclara

아래와 같이 print문을 5군데 삽입하여 실행했는데 처음과 마지막은 출력이 되는데 중간에 3군데는 출력되지 않습니다,,

pmg.PNG

실행결과는 아래와 같습니다

run_result.PNG감사합니다~

0

빅디

네~ 혹시 API 호출은 해보셨는지요?!

호출후 스크린샷 부탁 드립니다. -빅디 드림

0

빅디

안녕하세요! candyclara님!

점심 맛나게 하셨는지요~

로그출력이 안되는건 제가 가이드를 잘못드렸네요..죄송합니다. ^^;;;

먼저 sys 패키지를 import 해주시고요, print 명령 옵션을 아래처럼 추가해 주세요~

import sys

print("hello bigdata", file = sys.stdout)

 

-빅디 드림

0

빅디

안녕하세요! candyclara님!

드뎌 파일럿 프로젝트 막판까지 오셨군요!! ^^

끝까지 파이팅 입니다~

Bad Request가 왜 났는지 Flask의 smart_dnn_service.py에 로그를 찍어 봐야 할 것 같습니다.

간단하게 predict()함수 부분에서 아래처럼 print 명령으로 "step1,2,3"을 찍어서 재실행봐 주세요!!

-빅디 드림

 

@app.route('/smartcar/predict', methods=["GET","POST"])

def predict():

data = {"success": False}

params = flask.request.json

if (params == None):

params = flask.request.args

print("...........................................................Step-1")

print(params)

# if parameters are found, return a prediction

if (params != None):

x=pd.DataFrame.from_dict(params, orient='index').transpose()

print("...........................................................Step-2")

print(x)

with graph.as_default():

data["prediction"] = str(model.predict(x).argmax())

data["success"] = True

# return a response in json format

print("...........................................................Step-3")

print(data)

return flask.jsonify(data)

 

0

candyclara

선생님 말씀대로 print문을 넣고 실행했는데 출력이 안됩니다

캡처.PNG

맥북 환경구성 에러

0

19

2

주제영역3 데이타 조회 문의

0

36

2

환경 세팅 후 클라우데라매니저 삭제시

0

62

2

수강 기간 연장 부탁드립니다ㅠ

0

57

2

클라우데라 매니저 접속 불가 및 로그인 정보 문의

0

84

2

gcc 설치 에러

0

115

3

클러스터 설정 오류

0

85

2

클라우데라 클러스터 설치로 안넘어가짐

0

116

2

버추어박스 5.0 설치

0

139

2

워크플로우 예약 실행시 테이블은 생성되는데 데이터가 들어가지지 않습니다.

0

77

2

Hue 500 Error 어떻게 해결할 수 있나요?

0

146

3

환경세팅 질문있습니다.

0

103

2

버쥬얼박스

0

72

2

psycopg2==2.6.2. 에러

0

140

2

호스트 불량 문제에 관하여

0

106

2

하이브쿼리에서 에러가 나요...

0

166

3

하이브쿼리에서 에러

0

118

1

Hbase에 적재된 데이터 확인시 에러

0

145

2

파이썬 설치 시 에러

0

157

2

redis-cli 데이터 적재 확인

0

140

2

카프카 토픽 생성에서 에러

0

137

2

HDFS 명령어를 치는데 오류가 납니다

0

132

2

가상환경 내보내기

0

107

1

SpoolDIR 폴더로 옮기

0

100

2