برنامه نویسی

نحوه نظارت بر برنامه در حال تولید با استفاده از کانال های Discord

مشاهده پذیری یک تمرین بسیار مهم است به طوری که شما ایده ای از آنچه در برنامه شما اتفاق می افتد داشته باشید و به روز رسانی ها را از تعاملات جدید دریافت کنید.

ما خواهیم دید که چگونه پیام های جدید را به یک کانال discord ارسال کنیم، این به ما امکان می دهد تا تعاملات در تولید برنامه خود را نظارت کنیم، مانند یک تماس api جدید، یک ورود جدید یا حتی یک رکورد جدید در پایگاه داده.

در این مثال ما یک مسیر را نظارت می کنیم و در هر تماس با آن می خواهید پیامی برای عدم وجود برخی داده ها ارسال کنید.

اگر هنوز پروژه ای ایجاد نکرده اید، jsut اجرا کنید yarn init -y برای ایجاد یک جدید

چند وابستگی را نصب کنید:

yarn add express axios nodemon
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

یک کانال اختلاف ایجاد کنید که برای نظارت و دریافت به‌روزرسانی‌های جدید استفاده می‌شود. پس از ایجاد آن، باید یک وب هوک جدید برای این کانال ایجاد کنیم. به Settings Server > Integrations > Webhooks > New Webhook بروید، سپس کانال ایجاد شده را انتخاب کرده و پیوند را کپی کنید.

توضیحات تصویر

بازگشت به کد … ایجاد یک config.js فایل برای تعریف متغیرهای ما:

export const config = {
  API_PORT: 4000,
  DISCORD_CHANNEL_WEBHOOK: <your discord channel webhook>,
};
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

یک سرور اکسپرس جدید با یک مسیر ساده ایجاد کنید:

// index.js
const express = require('express')
const { config } = require('./config')
const axios = require('axios')

const app = express()

app.get('/observability', async (req, res) => {
  await axios.post(config.DISCORD_CHANNEL_WEBHOOK, { content: 'Hello World' }, {
    headers: {
      Accept: 'application/json',
      'Content-Type': 'application/json',
    }
  })
  res.send('observability done successfully')
})

app.listen(config.API_PORT, () => {
  console.log(`Server listening on port ${config.API_PORT}`)
})
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

بیایید کد را اجرا کنیم، ترمینال را باز کرده و اجرا کنیم nodemon index.js

حالا اگر به این آدرس اینترنتی دسترسی دارید localhost:4000/observability تو آن را خواهی دید:

توضیحات تصویر

و اگر کانال discord خود را بررسی کنید چیزی شبیه به این است:

توضیحات تصویر

و تمام، ما یک سیستم ثبت و مشاهده داریم، با خیال راحت این وب هوک را در هر زمانی در کد خود اجرا کنید که می خواهید وضعیت را در تولید دنبال کنید.

مخزن را با استفاده از تایپ اسکریپت اینجا ببینید: observability-with-discord


بیشتر را در zettelkasten من ببینید


عکس مارتن نیوهال بعد از Unsplash

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا