<aside> ๐ก CredentialsProviderError: Cloud not load credentials from any providers
</aside>
Amazon SQS๋ฅผ ์ฌ์ฉํด์ ๋ฉ์ธ์งํ์ ๋ฉ์ธ์ง๋ฅผ ๋ณด๋ด์ ์ฌ์ฉ์๋ค์๊ฒ ์ง์ ์ ๋ฌ๊น์ง ํ๊ธฐ ์ํด์
AWS.config.update({
region: process.env.AWS_REGION,
accessKeyId: process.env.ACCESS_KEY_ID,
secretAccessKey: process.env.SECRET_ACCESS_KEY,
});
@Module({
imports: [
SqsModule.register({
consumers: [],
producers: [
{
name: process.env.QUEUE_NAME,
queueUrl: process.env.QUEUE_URL,
region: process.env.AWS_REGION,
},
],
}),
],
providers: [MessageProducer],
exports: [MessageProducer],
})
export class ProducerModule {}
๋จผ์ ์์ฑ์ ๋ชจ๋์ ๋จผ์ ๋ง๋ค์ด์ ํ์ํ ์ ๋ณด๋ค์ ๋ฃ์ด์ฃผ๊ณ ,
@Injectable()
export class MessageProducer {
constructor(private readonly sqsService: SqsService) {}
async sendMessage(body: any) {
try {
const message: any = JSON.stringify(body);
await this.sqsService.send(process.env.QUEUE_NAME, {
id: 'id',
body: message
});
} catch (error) {
console.log('error in producing image!', error);
}
}
}
์๋น์ค์์ ์ ์กํ๊ณ ์ถ์ ๋ฉ์ธ์ง๋ฅผ ๋ฐ์์ SQS์ ๋ณด๋ด์ฃผ๋ฉด ๋๋๋ฐ ๊ณ์ ์์ ๊ฐ์ ์ค๋ฅ๊ฐ ๋ ์
์ฌ๋ฌ ์๋๋ฅผ ํด๋ณด์์ง๋ง ๊ณ์ ๊ฐ์ ์ค๋ฅ๊ฐ ๋์ ํํฐ๋๊ป ์ฌ์ญค๋ดค๋ค.
aws/credentials โ ์ด๊ฑธ ๋ง๋ค์ด์ Access Key ID, AWS Secret Access Key ๋ฑ ํ์ํ ๊ฑธ ๋ฃ์๋๋
๋๋์ด ๋ฉ์ธ์ง๋ฅผ ๋ณด๋ด๋๋ฐ ์ฑ๊ณตํ๋ค ใ ใ ใ ใ ใ ใ ใ
ํผ์ ์ค๋ฅ๋๋ฌธ์ ์ฌ๋ฌ๊ฐ์ง ์ฐพ์๋ณผ๋ aws/credentials ์ ๋ง๋ค๋ผ๋ ๊ธ์ ๋ดค์๋๋ฐ ๋ค๋ฅธ ์ฌ๋๋ค์ ์๋ฌด๋ ๋ง๋ค์ด์ ํ๋ ์์๊ฐ ์์ด์ ์๋ํ๋ ค๋ค๊ฐ ์ํ๋๋ฐ ใ ใ กใ ๊ทธ ๋ ํ์๋๋ผ๋ฉดโฆ