✅ স্বাভাবিক: V1001 সুস্থভাবে চলছে। CPU ব্যবহার 33.25% — স্বাভাবিক। পরবর্তী ৫ মিনিটে 34.68% থাকবে। RAM ব্যবহার 57.96% — স্থিতিশীল। পরবর্তী ৫ মিনিটে 58.06% থাকবে। সুপারিশ: কোনো পদক্ষেপ প্রয়োজন নেই। সিস্টেম স্বাভাবিক।
LSTM Autoencoder প্রথমে শুধু "স্বাভাবিক" সার্ভার behavior (CPU < 75th percentile) দিয়ে train হয়। এরপর যখন "অস্বাভাবিক" ডেটা আসে, model সেটা ঠিকমতো reconstruct করতে পারে না — ফলে Reconstruction Error (AE Error) বেড়ে যায়। এই error যদি threshold (95th percentile) ছাড়িয়ে যায়, সিস্টেম anomaly alert দেয়।
XGBoost মডেল ২৫টি engineered feature ব্যবহার করে পরবর্তী ৫ মিনিটের CPU/RAM predict করে। এর মধ্যে আছে: Kalman-filtered signal, rolling mean/max/std (৩০ ও ৬০ মিনিট), lag values (৫-৬০ মিনিট আগের), load-per-core ratio, এবং time features (hour, day of week)। Naive persistence baseline-এর চেয়ে ~১৮% কম RMSE অর্জন করেছে।
| সময় | Pred CPU | Actual CPU | Error | Pred RAM | Actual RAM | Error |
|---|---|---|---|---|---|---|
| 08:40:00 | 27.39% | 22.71% | 4.68% | 55.7% | 56.88% | 1.18% |
| 08:45:00 | 23.54% | 30.32% | 6.77% | 56.31% | 57.05% | 0.74% |
| 08:50:00 | 30.9% | 23.79% | 7.11% | 56.48% | 56.83% | 0.35% |
| 08:55:00 | 24.27% | 23.21% | 1.06% | 56.48% | 57.93% | 1.45% |
| 09:00:00 | 25.89% | 33.08% | 7.2% | 57.35% | 57.87% | 0.52% |
| 09:05:00 | 33.71% | 28.95% | 4.75% | 57.31% | 57.78% | 0.47% |
| 09:10:00 | 29.2% | 25.22% | 3.98% | 57.53% | 57.58% | 0.05% |
| 09:15:00 | 26.84% | 20.96% | 5.88% | 57.45% | 57.47% | 0.02% |
| 09:20:00 | 23.01% | 25.85% | 2.84% | 57.55% | 57.17% | 0.38% |
| 09:25:00 | 27.04% | 25.17% | 1.87% | 57.39% | 57.53% | 0.14% |
| 09:30:00 | 26.11% | 45.56% | 19.45% | 57.57% | 62.64% | 5.07% |
| 09:35:00 | 39.75% | 44.4% | 4.65% | 60.52% | 59.34% | 1.18% |
| 09:40:00 | 38.9% | 39.8% | 0.9% | 58.46% | 58.14% | 0.32% |
| 09:45:00 | 34.87% | 33.51% | 1.36% | 58.38% | 58.27% | 0.11% |
| 09:50:00 | 33.42% | 35.93% | 2.51% | 58.06% | 56.66% | 1.4% |
| 09:55:00 | 34.44% | 59.93% | 25.48% | 56.88% | 58.56% | 1.68% |
| 10:00:00 | 54.73% | 48.87% | 5.86% | 58.59% | 57.24% | 1.35% |
| 10:05:00 | 45.04% | 39.39% | 5.65% | 57.59% | 57.39% | 0.2% |
| 10:10:00 | 37.55% | 39.55% | 2.0% | 57.76% | 57.28% | 0.48% |
| 10:15:00 | 38.25% | 33.25% | 5.0% | 57.6% | 57.96% | 0.36% |
AE Error = LSTM Autoencoder-এর reconstruction loss (MSE)। Score 0.0 → Normal, Score 1.0 → Maximum Anomaly। Score > threshold_95 হলে anomaly alert। প্রতিটি ইভেন্ট database-এ log হয় এবং Telegram-এ notify করে।
| সময় | CPU | RAM | AE Error | Threshold | Action |
|---|---|---|---|---|---|
| 2026-08-12 10:39 | 30.62% | 61.07% | 0.009988 | 0.004769 | SCALE_UP_SOON |
| 2026-08-08 17:26 | 27.6% | 51.95% | 0.004876 | 0.004769 | SCALE_UP_SOON |
| 2026-08-08 00:14 | 30.39% | 58.65% | 0.010293 | 0.004769 | SCALE_UP_SOON |
| 2026-08-04 20:50 | 23.04% | 67.35% | 0.007930 | 0.004769 | SCALE_UP_SOON |
| 2026-08-04 20:45 | 18.36% | 65.55% | 0.006082 | 0.004769 | SCALE_UP_SOON |
| 2026-08-04 20:40 | 15.8% | 69.07% | 0.006099 | 0.004769 | SCALE_UP_SOON |
| 2026-08-04 20:35 | 25.54% | 70.07% | 0.007007 | 0.004769 | SCALE_UP_SOON |
| 2026-08-04 20:30 | 23.01% | 68.39% | 0.008667 | 0.004769 | SCALE_UP_SOON |
| 2026-08-04 20:25 | 24.65% | 67.98% | 0.008839 | 0.004769 | SCALE_UP_SOON |
| 2026-08-04 20:20 | 38.51% | 68.99% | 0.005001 | 0.004769 | SCALE_UP_NOW |
| 2026-08-04 20:10 | 55.85% | 68.15% | 0.004797 | 0.004769 | SCALE_UP_NOW |
| 2026-07-28 04:41 | 13.85% | 47.18% | 0.011732 | 0.004769 | SCALE_UP_SOON |
| 2026-07-23 23:50 | 8.86% | 41.99% | 0.005573 | 0.004769 | SCALE_UP_SOON |
| 2026-07-23 23:49 | 12.61% | 40.1% | 0.005276 | 0.004769 | SCALE_UP_SOON |
| 2026-07-23 23:43 | 19.53% | 39.11% | 0.006632 | 0.004769 | SCALE_UP_SOON |
| 2026-07-23 22:50 | 14.99% | 34.6% | 0.019041 | 0.004769 | SCALE_UP_SOON |
| 2026-07-23 21:25 | 19.3% | 42.92% | 0.027740 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 13:00 | 29.59% | 50.31% | 0.006158 | 0.004769 | SCALE_UP_NOW |
| 2026-07-21 12:25 | 12.99% | 50.11% | 0.005198 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 05:38 | 13.28% | 50.8% | 0.011519 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 05:22 | 21.22% | 49.38% | 0.014220 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 05:16 | 26.68% | 50.13% | 0.019547 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 05:13 | 28.2% | 50.5% | 0.015843 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 05:05 | 25.64% | 50.28% | 0.008682 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 05:00 | 40.53% | 51.06% | 0.005484 | 0.004769 | SCALE_UP_NOW |
| 2026-07-21 04:55 | 40.74% | 51.65% | 0.005425 | 0.004769 | SCALE_UP_NOW |
| 2026-07-21 03:57 | 19.84% | 49.72% | 0.006340 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 03:51 | 18.14% | 50.72% | 0.007857 | 0.004769 | SCALE_UP_SOON |
| 2026-07-21 03:45 | 21.88% | 49.19% | 0.004649 | 0.001590 | SCALE_UP_SOON |
| 2026-07-21 03:40 | 12.69% | 50.11% | 0.002887 | 0.001590 | SCALE_UP_SOON |
প্রতি ৩ ঘণ্টায় নতুন ডেটা দিয়ে XGBoost model retrain হয়। Drift detection: নতুন ডেটার গড় যদি পুরনোর চেয়ে ১০%+ আলাদা হয় তখনই retrain trigger হয়। Deploy-if-better policy: নতুন model-এর RMSE পুরনোর চেয়ে কম হলেই deploy, নাহলে পুরনোটাই থাকে। এতে model সবসময় সার্ভারের পরিবর্তনশীল workload pattern-এর সাথে adapt করে।