CloudWatch ਨਾਲ AI Agents ਦੀ Monitoring ਕਰਨਾ

ਹਰ agent call ਨੂੰ database ਵਿੱਚ log ਕਰਨਾ monitoring ਨਹੀਂ ਹੈ। ਇਹ ਸਿਰਫ਼ storage ਹੈ।

ਜੇਕਰ ਤੁਹਾਨੂੰ ਇਹ ਦੇਖਣ ਲਈ ਕਿ ਤੁਹਾਡਾ summarizer ਹੌਲੀ ਹੈ ਜਾਂ ਨਹੀਂ, ਰਾਤ ਦੇ 2:00 ਵਜੇ SQL queries ਚਲਾਉਣੀਆਂ ਪੈਂਦੀਆਂ ਹਨ, ਤਾਂ ਤੁਸੀਂ observability ਵਿੱਚ ਅਸਫਲ ਰਹੇ ਹੋ। ਤੁਹਾਨੂੰ dashboards ਅਤੇ alarms ਦੀ ਲੋੜ ਹੈ, database rows ਦੀ ਨਹੀਂ।

ਮੈਨੂੰ latency ਜਾਂ ਗੁੰਝਲਦਾਰ code ਵਧਾਏ ਬਿਨਾਂ AI agents ਦੀ monitoring ਕਰਨ ਦੇ ਦੋ ਤਰੀਕੇ ਮਿਲੇ ਹਨ।

1. Failure Modes ਲਈ Metric Filters ਦੀ ਵਰਤੋਂ ਕਰੋ

Budget caps ਜਾਂ service throttling ਵਰਗੇ failure modes ਅਦਿੱਖ ਨਹੀਂ ਹੋਣੇ ਚਾਹੀਦੇ। API ਨੂੰ call ਕਰਨ ਲਈ ਨਵਾਂ code ਨਾ ਲਿਖੋ। ਇਸ ਦੀ ਬਜਾਏ, ਆਪਣੇ ਮੌਜੂਦਾ logs ਦੀ ਵਰਤੋਂ ਕਰੋ।

ਜਦੋਂ budget cap ਪੂਰਾ ਹੋ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਤੁਹਾਡਾ code ਇੱਕ error log ਕਰਦਾ ਹੈ। ਤੁਸੀਂ ਉਹਨਾਂ logs ਨੂੰ scan ਕਰਨ ਲਈ CloudWatch Metric Filter ਸੈੱਟ ਕਰ ਸਕਦੇ ਹੋ। ਜੇਕਰ pattern ਮਿਲਦਾ ਹੈ, ਤਾਂ CloudWatch ਇੱਕ metric ਵਧਾ ਦਿੰਦਾ ਹੈ।

ਇਹ ਤਰੀਕਾ ਸਸਤਾ ਹੈ। ਇਸ ਲਈ ਕਿਸੇ ਵਾਧੂ IAM permissions ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ ਅਤੇ ਇਹ ਤੁਹਾਡੇ agent ਵਿੱਚ zero latency ਜੋੜਦਾ ਹੈ।

ਇਸ ਦੀ ਵਰਤੋਂ ਕਰੋ:

  • ਮਹੀਨਾਵਾਰ cost cap ਪੂਰਾ ਹੋਣਾ
  • Bedrock throttling errors
  • ਆਮ agent failures

2. Performance Data ਲਈ EMF ਦੀ ਵਰਤੋਂ ਕਰੋ

ਜੇਕਰ ਤੁਸੀਂ latency, token usage, ਜਾਂ per agent cost ਨੂੰ track ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ Metric Filters ਕਾਫ਼ੀ ਨਹੀਂ ਹਨ। ਤੁਹਾਨੂੰ dimensions ਦੀ ਲੋੜ ਹੈ।

PutMetricData ਦੀ ਵਰਤੋਂ ਨਾ ਕਰੋ। ਇਹ ਇੱਕ synchronous network call ਹੈ। ਇਹ ਤੁਹਾਡੀ request ਵਿੱਚ 30ms ਤੋਂ 80ms ਤੱਕ ਵਾਧਾ ਕਰ ਦਿੰਦਾ ਹੈ। ਜੇਕਰ CloudWatch ਖੁਦ load ਦੇ ਅਧੀਨ ਹੈ, ਤਾਂ ਇਹ ਫੇਲ੍ਹ ਵੀ ਹੋ ਸਕਦਾ ਹੈ।

ਇਸ ਦੀ ਬਜਾਏ, Embedded Metric Format (EMF) ਦੀ ਵਰਤੋਂ ਕਰੋ।

ਤੁਸੀਂ stdout 'ਤੇ JSON ਦੀ ਇੱਕ ਸਿੰਗਲ ਲਾਈਨ ਲਿਖਦੇ ਹੋ। CloudWatch ਆਪਣੇ ਆਪ ਇਹਨਾਂ ਨੂੰ dimensions ਦੇ ਨਾਲ metrics ਵਜੋਂ ਕੱਢ ਲੈਂਦਾ ਹੈ।

ਇੱਕ JSON ਲਾਈਨ ਨਾਲ, ਤੁਹਾਨੂੰ ਮਿਲਦਾ ਹੈ:

  • ਕੁੱਲ (Total) invocations
  • Error rates
  • Latency (P95)
  • Input ਅਤੇ output tokens
  • Per model ਅਤੇ per agent cost

ਕੁਸ਼ਲ (Efficient) Observability ਦੇ ਨਿਯਮ

  • ਇੱਕ ਲਾਈਨ emit ਕਰੋ ਅਤੇ CloudWatch ਨੂੰ ਕੰਮ ਕਰਨ ਦਿਓ।
  • Telemetry ਨੂੰ ਕਦੇ ਵੀ ਆਪਣੇ agent ਨੂੰ ਟੁੱਟਣ ਨਾ ਦਿਓ। ਆਪਣੀਆਂ metric calls ਨੂੰ try-except blocks ਵਿੱਚ wrap ਕਰੋ।
  • ਇਕੱਲੇ events ਦੀ ਬਜਾਏ bursts 'ਤੇ alarm ਸੈੱਟ ਕਰੋ। ਇੱਕ throttle ਆਮ ਗੱਲ ਹੈ। ਪੰਜ ਮਿੰਟਾਂ ਵਿੱਚ ਦਸ throttles ਇੱਕ incident ਹੈ।
  • ਖਾਸ agents ਲਈ dimensions ਦੀ ਵਰਤੋਂ ਕਰੋ, ਪਰ system-wide latency ਲਈ aggregates ਦੀ ਵਰਤੋਂ ਕਰੋ।
  • Errors ਨੂੰ code ਰਾਹੀਂ ਮਿਲਾਓ, text strings ਰਾਹੀਂ ਨਹੀਂ।

ਤੁਸੀਂ ਸਿਰਫ਼ logs ਅਤੇ EMF ਦੀ ਵਰਤੋਂ ਕਰਕੇ $0 ਵਿੱਚ ਇੱਕ professional monitoring stack ਬਣਾ ਸਕਦੇ ਹੋ।

Source: https://dev.to/aws-builders/monitorear-agentes-de-ia-con-cloudwatch-45c4

Optional learning community: https://t.me/GyaanSetuAi