ниже приведен код службы aws-detection
Код: Выделить всё
async def aws_rekognition(background_tasks: BackgroundTasks, url, bucketName, filePath, objectName, confidenceValue):
# open yaml file
# try:
with open(secret_path) as f:
print("Url+++++", url,secret_path)
logger.remove()
now = datetime.now().strftime('%m_%d_%Y_%H_%M_%S')
# create file name
log_filename = str(now) + '.log'
# add file name given format
logger.add(sys.stdout, colorize=True,
format='%(asctime)s :: %(levelname)s :: %(module)s :: %(funcName)s :: %(lineno)d :: %(message)s')
# add file root path
logger.add('logs/{}'.format(log_filename))
logger.info("Connecting")
# get yaml file value
config_dict = yaml.load(f, Loader=yaml.FullLoader)
object_url = url
logger.info(f"request parameter - {object_url}")
# set aws value
aws_access_key_id = config_dict['AWS']['AWS_ACCESS_KEY_ID']
aws_secret_access_key = config_dict['AWS']['AWS_SECRET_ACCESS_KEY']
aws_region = config_dict['REGION']['REGION_ID']
aws_server = config_dict['SERVER']['URL']
try:
# connect with boto aws connection
client = boto3.client('rekognition', region_name=aws_region, aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key)
# response = requests.get(object_url)
# connect with s3
s3_client = create_aws_connection()
print("s3_client++++++++++++", s3_client)
except:
aws_res = {"Status": status.HTTP_400_BAD_REQUEST, "Msg": "something is wrong in AWS connection"}
return JSONResponse(aws_res)
#BR action call
# call the image response to s3 client
file_name = object_url.split('/')[-1]
try:
response = client.detect_labels(Image={'S3Object':{'Bucket': out_res['bucket_name'],'Name': out_res['path']}}, MaxLabels=10)
except:
aws_reko = {"Status": status.HTTP_401_UNAUTHORIZED, "Msg": "something is wrong in AWS rekognitions API"}
return JSONResponse(aws_reko)
try:
aws_log_bucket = config_dict['BUCKET']['LOG_BUCKET']
final_log_path = os.path.join("logs", log_filename)
s3_client.upload_file(final_log_path, aws_log_bucket, log_filename)
except:
aws_log = {"Status": status.HTTP_302_FOUND, "Msg": "something is wrong in uploading logs"}
return JSONResponse(aws_log)
# delete log dir if exist
if os.path.isdir('logs'):
print("Log File exists")
shutil.rmtree('logs')
return JSONResponse(final_res)
Мы также обновили учетные данные доступа в диспетчере секретов aws.
Мы проверили, что журналы aws- служба обнаружения получает 200ОК, но в журналах API появляется указанная выше ошибка.
Вопросы:
- нужна ли мне служба рекогинизации работает на aws, чтобы эта служба работала
- нужно ли мне включить какую-либо другую службу на aws.
- как исправить эту ошибку
Подробнее здесь: https://stackoverflow.com/questions/785 ... on-service