Openstatus www.openstatus.dev
6
fork

Configure Feed

Select the types of activity you want to include in your feed.

Vercel next latency blog (#711)

* ๐Ÿ“ blog on going

* ๐Ÿ“ blog

* ๐Ÿ“ blog

* ๐Ÿ“ blog

* ๐Ÿ“ blog

* chore: add data to post

* ๐Ÿ“ blog

---------

Co-authored-by: mxkaske <maximilian@kaske.org>

authored by

Thibault Le Ouay
mxkaske
and committed by
GitHub
c70617d5 3a96ecd4

+3221 -4
apps/web/public/assets/posts/monitoring-vercel/serverless-vs-edge.png

This is a binary file and will not be displayed.

+751
apps/web/public/assets/posts/monitoring-vercel/vercel-cold.json
··· 1 + { 2 + "regions": ["ams", "iad", "hkg", "jnb", "syd", "gru"], 3 + "data": { 4 + "regions": ["ams", "gru", "hkg", "iad", "jnb", "syd"], 5 + "data": [ 6 + { 7 + "timestamp": "Mar 10, 18:00", 8 + "gru": 956, 9 + "ams": 930, 10 + "iad": 778, 11 + "jnb": 1055, 12 + "hkg": 857, 13 + "syd": 906 14 + }, 15 + { 16 + "timestamp": "Mar 10, 19:00", 17 + "iad": 759, 18 + "ams": 834, 19 + "gru": 830, 20 + "syd": 875, 21 + "hkg": 868, 22 + "jnb": 951 23 + }, 24 + { 25 + "timestamp": "Mar 10, 20:00", 26 + "gru": 892, 27 + "ams": 876, 28 + "iad": 675, 29 + "syd": 847, 30 + "jnb": 962, 31 + "hkg": 878 32 + }, 33 + { 34 + "timestamp": "Mar 10, 21:00", 35 + "syd": 959, 36 + "jnb": 968, 37 + "hkg": 946, 38 + "iad": 772, 39 + "gru": 834, 40 + "ams": 818 41 + }, 42 + { 43 + "timestamp": "Mar 10, 22:00", 44 + "ams": 986, 45 + "gru": 853, 46 + "iad": 804, 47 + "syd": 874, 48 + "hkg": 854, 49 + "jnb": 1017 50 + }, 51 + { 52 + "timestamp": "Mar 10, 23:00", 53 + "iad": 731, 54 + "ams": 818, 55 + "gru": 880, 56 + "hkg": 885, 57 + "jnb": 1008, 58 + "syd": 891 59 + }, 60 + { 61 + "timestamp": "Mar 11, 00:00", 62 + "jnb": 1008, 63 + "hkg": 895, 64 + "syd": 881, 65 + "iad": 762, 66 + "gru": 777, 67 + "ams": 855 68 + }, 69 + { 70 + "timestamp": "Mar 11, 01:00", 71 + "syd": 867, 72 + "jnb": 932, 73 + "hkg": 927, 74 + "iad": 688, 75 + "gru": 1015, 76 + "ams": 848 77 + }, 78 + { 79 + "timestamp": "Mar 11, 02:00", 80 + "syd": 861, 81 + "hkg": 848, 82 + "jnb": 1008, 83 + "ams": 846, 84 + "gru": 890, 85 + "iad": 782 86 + }, 87 + { 88 + "timestamp": "Mar 11, 03:00", 89 + "hkg": 948, 90 + "jnb": 1022, 91 + "syd": 970, 92 + "iad": 814, 93 + "ams": 812, 94 + "gru": 783 95 + }, 96 + { 97 + "timestamp": "Mar 11, 04:00", 98 + "iad": 714, 99 + "gru": 814, 100 + "ams": 858, 101 + "jnb": 982, 102 + "hkg": 895, 103 + "syd": 830 104 + }, 105 + { 106 + "timestamp": "Mar 11, 05:00", 107 + "syd": 850, 108 + "hkg": 902, 109 + "jnb": 1004, 110 + "ams": 817, 111 + "gru": 756, 112 + "iad": 693 113 + }, 114 + { 115 + "timestamp": "Mar 11, 06:00", 116 + "iad": 682, 117 + "gru": 624, 118 + "ams": 808, 119 + "syd": 910, 120 + "jnb": 974, 121 + "hkg": 880 122 + }, 123 + { 124 + "timestamp": "Mar 11, 07:00", 125 + "ams": 815, 126 + "gru": 821, 127 + "iad": 661, 128 + "hkg": 924, 129 + "jnb": 952, 130 + "syd": 848 131 + }, 132 + { 133 + "timestamp": "Mar 11, 08:00", 134 + "hkg": 898, 135 + "jnb": 976, 136 + "syd": 866, 137 + "ams": 792, 138 + "gru": 829, 139 + "iad": 768 140 + }, 141 + { 142 + "timestamp": "Mar 11, 09:00", 143 + "syd": 894, 144 + "jnb": 1004, 145 + "hkg": 926, 146 + "iad": 690, 147 + "gru": 815, 148 + "ams": 832 149 + }, 150 + { 151 + "timestamp": "Mar 11, 10:00", 152 + "iad": 702, 153 + "ams": 828, 154 + "gru": 762, 155 + "hkg": 885, 156 + "jnb": 968, 157 + "syd": 874 158 + }, 159 + { 160 + "timestamp": "Mar 11, 11:00", 161 + "iad": 734, 162 + "ams": 766, 163 + "gru": 814, 164 + "hkg": 872, 165 + "jnb": 1001, 166 + "syd": 866 167 + }, 168 + { 169 + "timestamp": "Mar 11, 12:00", 170 + "iad": 718, 171 + "gru": 838, 172 + "ams": 784, 173 + "syd": 862, 174 + "jnb": 1007, 175 + "hkg": 942 176 + }, 177 + { 178 + "timestamp": "Mar 11, 13:00", 179 + "ams": 780, 180 + "gru": 872, 181 + "iad": 708, 182 + "hkg": 804, 183 + "jnb": 968, 184 + "syd": 858 185 + }, 186 + { 187 + "timestamp": "Mar 11, 14:00", 188 + "iad": 729, 189 + "ams": 821, 190 + "gru": 880, 191 + "hkg": 957, 192 + "jnb": 956, 193 + "syd": 842 194 + }, 195 + { 196 + "timestamp": "Mar 11, 15:00", 197 + "hkg": 912, 198 + "jnb": 1019, 199 + "syd": 876, 200 + "iad": 733, 201 + "ams": 827, 202 + "gru": 803 203 + }, 204 + { 205 + "timestamp": "Mar 11, 16:00", 206 + "syd": 855, 207 + "hkg": 995, 208 + "jnb": 970, 209 + "iad": 813, 210 + "ams": 786, 211 + "gru": 814 212 + }, 213 + { 214 + "timestamp": "Mar 11, 17:00", 215 + "syd": 865, 216 + "jnb": 1012, 217 + "hkg": 920, 218 + "iad": 753, 219 + "gru": 977, 220 + "ams": 806 221 + }, 222 + { 223 + "timestamp": "Mar 11, 18:00", 224 + "jnb": 1100, 225 + "hkg": 906, 226 + "syd": 917, 227 + "iad": 764, 228 + "gru": 876, 229 + "ams": 878 230 + }, 231 + { 232 + "timestamp": "Mar 11, 19:00", 233 + "iad": 740, 234 + "ams": 818, 235 + "gru": 880, 236 + "hkg": 921, 237 + "jnb": 996, 238 + "syd": 852 239 + }, 240 + { 241 + "timestamp": "Mar 11, 20:00", 242 + "iad": 754, 243 + "ams": 914, 244 + "gru": 886, 245 + "syd": 872, 246 + "hkg": 922, 247 + "jnb": 956 248 + }, 249 + { 250 + "timestamp": "Mar 11, 21:00", 251 + "ams": 870, 252 + "gru": 850, 253 + "iad": 681, 254 + "hkg": 942, 255 + "jnb": 1062, 256 + "syd": 827 257 + }, 258 + { 259 + "timestamp": "Mar 11, 22:00", 260 + "ams": 898, 261 + "gru": 838, 262 + "iad": 757, 263 + "syd": 897, 264 + "hkg": 890, 265 + "jnb": 986 266 + }, 267 + { 268 + "timestamp": "Mar 11, 23:00", 269 + "syd": 875, 270 + "hkg": 897, 271 + "jnb": 1002, 272 + "ams": 858, 273 + "gru": 894, 274 + "iad": 748 275 + }, 276 + { 277 + "timestamp": "Mar 12, 00:00", 278 + "syd": 846, 279 + "jnb": 983, 280 + "hkg": 1010, 281 + "gru": 766, 282 + "ams": 833, 283 + "iad": 750 284 + }, 285 + { 286 + "timestamp": "Mar 12, 01:00", 287 + "syd": 911, 288 + "jnb": 1064, 289 + "hkg": 940, 290 + "iad": 742, 291 + "gru": 802, 292 + "ams": 895 293 + }, 294 + { 295 + "timestamp": "Mar 12, 02:00", 296 + "hkg": 868, 297 + "jnb": 948, 298 + "syd": 852, 299 + "iad": 652, 300 + "ams": 812, 301 + "gru": 737 302 + }, 303 + { 304 + "timestamp": "Mar 12, 03:00", 305 + "hkg": 857, 306 + "jnb": 930, 307 + "syd": 816, 308 + "iad": 664, 309 + "ams": 813, 310 + "gru": 835 311 + }, 312 + { 313 + "timestamp": "Mar 12, 04:00", 314 + "iad": 648, 315 + "gru": 839, 316 + "ams": 894, 317 + "syd": 870, 318 + "jnb": 984, 319 + "hkg": 913 320 + }, 321 + { 322 + "timestamp": "Mar 12, 05:00", 323 + "gru": 830, 324 + "iad": 672, 325 + "hkg": 878, 326 + "jnb": 1000, 327 + "syd": 918, 328 + "ams": 816 329 + }, 330 + { 331 + "timestamp": "Mar 12, 06:00", 332 + "gru": 821, 333 + "ams": 908, 334 + "iad": 802, 335 + "syd": 848, 336 + "jnb": 989, 337 + "hkg": 878 338 + }, 339 + { 340 + "timestamp": "Mar 12, 07:00", 341 + "syd": 836, 342 + "jnb": 834, 343 + "hkg": 739, 344 + "gru": 775, 345 + "ams": 806, 346 + "iad": 664 347 + }, 348 + { 349 + "timestamp": "Mar 12, 08:00", 350 + "jnb": 1005, 351 + "hkg": 927, 352 + "syd": 916, 353 + "gru": 814, 354 + "ams": 792, 355 + "iad": 736 356 + }, 357 + { 358 + "timestamp": "Mar 12, 09:00", 359 + "ams": 831, 360 + "gru": 738, 361 + "iad": 747, 362 + "hkg": 852, 363 + "jnb": 1082, 364 + "syd": 856 365 + }, 366 + { 367 + "timestamp": "Mar 12, 10:00", 368 + "ams": 838, 369 + "gru": 854, 370 + "iad": 670, 371 + "syd": 866, 372 + "hkg": 830, 373 + "jnb": 932 374 + }, 375 + { 376 + "timestamp": "Mar 12, 11:00", 377 + "gru": 859, 378 + "ams": 748, 379 + "iad": 662, 380 + "syd": 855, 381 + "jnb": 937, 382 + "hkg": 871 383 + }, 384 + { 385 + "timestamp": "Mar 12, 12:00", 386 + "gru": 910, 387 + "ams": 802, 388 + "iad": 724, 389 + "jnb": 998, 390 + "hkg": 934, 391 + "syd": 868 392 + }, 393 + { 394 + "timestamp": "Mar 12, 13:00", 395 + "syd": 834, 396 + "jnb": 1050, 397 + "hkg": 914, 398 + "iad": 710, 399 + "gru": 902, 400 + "ams": 898 401 + }, 402 + { 403 + "timestamp": "Mar 12, 14:00", 404 + "jnb": 1096, 405 + "hkg": 880, 406 + "syd": 879, 407 + "iad": 716, 408 + "gru": 880, 409 + "ams": 820 410 + }, 411 + { 412 + "timestamp": "Mar 12, 15:00", 413 + "iad": 720, 414 + "gru": 824, 415 + "ams": 823, 416 + "jnb": 688, 417 + "hkg": 686, 418 + "syd": 816 419 + }, 420 + { 421 + "timestamp": "Mar 12, 16:00", 422 + "iad": 766, 423 + "ams": 890, 424 + "gru": 812, 425 + "syd": 850, 426 + "hkg": 950, 427 + "jnb": 997 428 + }, 429 + { 430 + "timestamp": "Mar 12, 17:00", 431 + "gru": 1000, 432 + "ams": 955, 433 + "iad": 740, 434 + "jnb": 1070, 435 + "hkg": 1034, 436 + "syd": 896 437 + }, 438 + { 439 + "timestamp": "Mar 12, 18:00", 440 + "syd": 836, 441 + "jnb": 904, 442 + "hkg": 883, 443 + "gru": 760, 444 + "ams": 832, 445 + "iad": 746 446 + }, 447 + { 448 + "timestamp": "Mar 12, 19:00", 449 + "hkg": 960, 450 + "jnb": 920, 451 + "syd": 1010, 452 + "iad": 758, 453 + "ams": 856, 454 + "gru": 852 455 + }, 456 + { 457 + "timestamp": "Mar 12, 20:00", 458 + "hkg": 946, 459 + "jnb": 996, 460 + "syd": 848, 461 + "ams": 788, 462 + "gru": 788, 463 + "iad": 726 464 + }, 465 + { 466 + "timestamp": "Mar 12, 21:00", 467 + "iad": 770, 468 + "ams": 807, 469 + "gru": 776, 470 + "hkg": 900, 471 + "jnb": 1054, 472 + "syd": 880 473 + }, 474 + { 475 + "timestamp": "Mar 12, 22:00", 476 + "iad": 760, 477 + "ams": 852, 478 + "gru": 986, 479 + "hkg": 906, 480 + "jnb": 1069, 481 + "syd": 932 482 + }, 483 + { 484 + "timestamp": "Mar 12, 23:00", 485 + "gru": 752, 486 + "ams": 798, 487 + "iad": 718, 488 + "syd": 893, 489 + "jnb": 979, 490 + "hkg": 888 491 + }, 492 + { 493 + "timestamp": "Mar 13, 00:00", 494 + "syd": 862, 495 + "hkg": 1028, 496 + "jnb": 957, 497 + "iad": 694, 498 + "ams": 812, 499 + "gru": 853 500 + }, 501 + { 502 + "timestamp": "Mar 13, 01:00", 503 + "iad": 700, 504 + "ams": 860, 505 + "gru": 842, 506 + "hkg": 896, 507 + "jnb": 1004, 508 + "syd": 932 509 + }, 510 + { 511 + "timestamp": "Mar 13, 02:00", 512 + "jnb": 896, 513 + "hkg": 910, 514 + "syd": 977, 515 + "iad": 717, 516 + "gru": 786, 517 + "ams": 816 518 + }, 519 + { 520 + "timestamp": "Mar 13, 03:00", 521 + "hkg": 922, 522 + "jnb": 994, 523 + "syd": 865, 524 + "iad": 708, 525 + "ams": 841, 526 + "gru": 767 527 + }, 528 + { 529 + "timestamp": "Mar 13, 04:00", 530 + "jnb": 976, 531 + "hkg": 894, 532 + "syd": 886, 533 + "gru": 906, 534 + "ams": 830, 535 + "iad": 710 536 + }, 537 + { 538 + "timestamp": "Mar 13, 05:00", 539 + "iad": 684, 540 + "ams": 887, 541 + "gru": 814, 542 + "hkg": 890, 543 + "jnb": 907, 544 + "syd": 835 545 + }, 546 + { 547 + "timestamp": "Mar 13, 06:00", 548 + "jnb": 966, 549 + "hkg": 964, 550 + "syd": 871, 551 + "iad": 784, 552 + "gru": 872, 553 + "ams": 990 554 + }, 555 + { 556 + "timestamp": "Mar 13, 07:00", 557 + "gru": 814, 558 + "ams": 880, 559 + "iad": 722, 560 + "syd": 925, 561 + "jnb": 910, 562 + "hkg": 938 563 + }, 564 + { 565 + "timestamp": "Mar 13, 08:00", 566 + "syd": 848, 567 + "hkg": 872, 568 + "jnb": 1026, 569 + "iad": 714, 570 + "ams": 850, 571 + "gru": 864 572 + }, 573 + { 574 + "timestamp": "Mar 13, 09:00", 575 + "gru": 785, 576 + "ams": 869, 577 + "iad": 706, 578 + "jnb": 960, 579 + "hkg": 936, 580 + "syd": 824 581 + }, 582 + { 583 + "timestamp": "Mar 13, 10:00", 584 + "jnb": 1010, 585 + "hkg": 896, 586 + "syd": 880, 587 + "gru": 770, 588 + "ams": 820, 589 + "iad": 725 590 + }, 591 + { 592 + "timestamp": "Mar 13, 11:00", 593 + "syd": 838, 594 + "hkg": 822, 595 + "jnb": 1019, 596 + "iad": 713, 597 + "ams": 843, 598 + "gru": 834 599 + }, 600 + { 601 + "timestamp": "Mar 13, 12:00", 602 + "hkg": 890, 603 + "jnb": 988, 604 + "syd": 944, 605 + "ams": 770, 606 + "gru": 808, 607 + "iad": 710 608 + }, 609 + { 610 + "timestamp": "Mar 13, 13:00", 611 + "iad": 710, 612 + "ams": 838, 613 + "gru": 880, 614 + "hkg": 874, 615 + "jnb": 1024, 616 + "syd": 858 617 + }, 618 + { 619 + "timestamp": "Mar 13, 14:00", 620 + "hkg": 882, 621 + "jnb": 978, 622 + "syd": 912, 623 + "iad": 784, 624 + "ams": 852, 625 + "gru": 843 626 + }, 627 + { 628 + "timestamp": "Mar 13, 15:00", 629 + "syd": 878, 630 + "jnb": 904, 631 + "hkg": 894, 632 + "gru": 868, 633 + "ams": 840, 634 + "iad": 732 635 + }, 636 + { 637 + "timestamp": "Mar 13, 16:00", 638 + "iad": 714, 639 + "ams": 882, 640 + "gru": 934, 641 + "syd": 872, 642 + "hkg": 922, 643 + "jnb": 1030 644 + }, 645 + { 646 + "timestamp": "Mar 13, 17:00", 647 + "iad": 742, 648 + "ams": 858, 649 + "gru": 836, 650 + "hkg": 892, 651 + "jnb": 1008, 652 + "syd": 836 653 + }, 654 + { 655 + "timestamp": "Mar 13, 18:00", 656 + "jnb": 954, 657 + "hkg": 878, 658 + "syd": 851, 659 + "iad": 792, 660 + "gru": 794, 661 + "ams": 792 662 + }, 663 + { 664 + "timestamp": "Mar 13, 19:00", 665 + "syd": 835, 666 + "jnb": 1072, 667 + "hkg": 1044, 668 + "gru": 1083, 669 + "ams": 934, 670 + "iad": 814 671 + }, 672 + { 673 + "timestamp": "Mar 13, 20:00", 674 + "syd": 961, 675 + "hkg": 944, 676 + "jnb": 981, 677 + "iad": 704, 678 + "ams": 840, 679 + "gru": 865 680 + } 681 + ] 682 + }, 683 + "metricsByRegion": [ 684 + { 685 + "region": "syd", 686 + "count": 147, 687 + "ok": 147, 688 + "lastTimestamp": 1710358249474, 689 + "p50Latency": 866, 690 + "p75Latency": 892, 691 + "p90Latency": 957, 692 + "p95Latency": 996, 693 + "p99Latency": 1044 694 + }, 695 + { 696 + "region": "gru", 697 + "count": 147, 698 + "ok": 147, 699 + "lastTimestamp": 1710358249474, 700 + "p50Latency": 823, 701 + "p75Latency": 894, 702 + "p90Latency": 954, 703 + "p95Latency": 994, 704 + "p99Latency": 1173 705 + }, 706 + { 707 + "region": "iad", 708 + "count": 147, 709 + "ok": 147, 710 + "lastTimestamp": 1710358249474, 711 + "p50Latency": 719, 712 + "p75Latency": 761, 713 + "p90Latency": 802, 714 + "p95Latency": 822, 715 + "p99Latency": 894 716 + }, 717 + { 718 + "region": "ams", 719 + "count": 147, 720 + "ok": 147, 721 + "lastTimestamp": 1710358249474, 722 + "p50Latency": 832, 723 + "p75Latency": 870, 724 + "p90Latency": 919, 725 + "p95Latency": 958, 726 + "p99Latency": 1015 727 + }, 728 + { 729 + "region": "hkg", 730 + "count": 147, 731 + "ok": 147, 732 + "lastTimestamp": 1710358249474, 733 + "p50Latency": 901, 734 + "p75Latency": 934, 735 + "p90Latency": 976, 736 + "p95Latency": 1024, 737 + "p99Latency": 1073 738 + }, 739 + { 740 + "region": "jnb", 741 + "count": 147, 742 + "ok": 147, 743 + "lastTimestamp": 1710358249474, 744 + "p50Latency": 991, 745 + "p75Latency": 1016, 746 + "p90Latency": 1066, 747 + "p95Latency": 1128, 748 + "p99Latency": 1211 749 + } 750 + ] 751 + }
+751
apps/web/public/assets/posts/monitoring-vercel/vercel-edge.json
··· 1 + { 2 + "regions": ["ams", "iad", "hkg", "jnb", "syd", "gru"], 3 + "data": { 4 + "regions": ["ams", "gru", "hkg", "iad", "jnb", "syd"], 5 + "data": [ 6 + { 7 + "timestamp": "Mar 10, 18:00", 8 + "gru": 106, 9 + "ams": 145, 10 + "iad": 117, 11 + "jnb": 128, 12 + "hkg": 89, 13 + "syd": 78 14 + }, 15 + { 16 + "timestamp": "Mar 10, 19:00", 17 + "iad": 126, 18 + "ams": 156, 19 + "gru": 120, 20 + "syd": 87, 21 + "hkg": 96, 22 + "jnb": 117 23 + }, 24 + { 25 + "timestamp": "Mar 10, 20:00", 26 + "gru": 94, 27 + "ams": 160, 28 + "iad": 123, 29 + "syd": 86, 30 + "jnb": 125, 31 + "hkg": 94 32 + }, 33 + { 34 + "timestamp": "Mar 10, 21:00", 35 + "syd": 83, 36 + "jnb": 119, 37 + "hkg": 81, 38 + "iad": 116, 39 + "gru": 116, 40 + "ams": 160 41 + }, 42 + { 43 + "timestamp": "Mar 10, 22:00", 44 + "ams": 135, 45 + "gru": 112, 46 + "iad": 112, 47 + "syd": 96, 48 + "hkg": 94, 49 + "jnb": 108 50 + }, 51 + { 52 + "timestamp": "Mar 10, 23:00", 53 + "iad": 109, 54 + "ams": 107, 55 + "gru": 110, 56 + "hkg": 94, 57 + "jnb": 119, 58 + "syd": 98 59 + }, 60 + { 61 + "timestamp": "Mar 11, 00:00", 62 + "jnb": 99, 63 + "hkg": 92, 64 + "syd": 101, 65 + "iad": 116, 66 + "gru": 134, 67 + "ams": 103 68 + }, 69 + { 70 + "timestamp": "Mar 11, 01:00", 71 + "syd": 94, 72 + "jnb": 112, 73 + "hkg": 98, 74 + "iad": 112, 75 + "gru": 132, 76 + "ams": 100 77 + }, 78 + { 79 + "timestamp": "Mar 11, 02:00", 80 + "syd": 102, 81 + "hkg": 101, 82 + "jnb": 101, 83 + "ams": 105, 84 + "gru": 116, 85 + "iad": 116 86 + }, 87 + { 88 + "timestamp": "Mar 11, 03:00", 89 + "hkg": 105, 90 + "jnb": 97, 91 + "syd": 108, 92 + "iad": 108, 93 + "ams": 100, 94 + "gru": 121 95 + }, 96 + { 97 + "timestamp": "Mar 11, 04:00", 98 + "iad": 102, 99 + "gru": 89, 100 + "ams": 107, 101 + "jnb": 107, 102 + "hkg": 113, 103 + "syd": 112 104 + }, 105 + { 106 + "timestamp": "Mar 11, 05:00", 107 + "syd": 112, 108 + "hkg": 104, 109 + "jnb": 120, 110 + "ams": 102, 111 + "gru": 76, 112 + "iad": 100 113 + }, 114 + { 115 + "timestamp": "Mar 11, 06:00", 116 + "iad": 94, 117 + "gru": 78, 118 + "ams": 111, 119 + "syd": 102, 120 + "jnb": 130, 121 + "hkg": 112 122 + }, 123 + { 124 + "timestamp": "Mar 11, 07:00", 125 + "ams": 108, 126 + "gru": 82, 127 + "iad": 100, 128 + "hkg": 115, 129 + "jnb": 134, 130 + "syd": 100 131 + }, 132 + { 133 + "timestamp": "Mar 11, 08:00", 134 + "hkg": 108, 135 + "jnb": 124, 136 + "syd": 96, 137 + "ams": 122, 138 + "gru": 77, 139 + "iad": 104 140 + }, 141 + { 142 + "timestamp": "Mar 11, 09:00", 143 + "syd": 98, 144 + "jnb": 128, 145 + "hkg": 114, 146 + "iad": 120, 147 + "gru": 87, 148 + "ams": 118 149 + }, 150 + { 151 + "timestamp": "Mar 11, 10:00", 152 + "iad": 102, 153 + "ams": 142, 154 + "gru": 80, 155 + "hkg": 115, 156 + "jnb": 146, 157 + "syd": 105 158 + }, 159 + { 160 + "timestamp": "Mar 11, 11:00", 161 + "iad": 124, 162 + "ams": 150, 163 + "gru": 119, 164 + "hkg": 118, 165 + "jnb": 134, 166 + "syd": 95 167 + }, 168 + { 169 + "timestamp": "Mar 11, 12:00", 170 + "iad": 100, 171 + "gru": 55, 172 + "ams": 140, 173 + "syd": 102, 174 + "jnb": 130, 175 + "hkg": 106 176 + }, 177 + { 178 + "timestamp": "Mar 11, 13:00", 179 + "ams": 156, 180 + "gru": 110, 181 + "iad": 132, 182 + "hkg": 122, 183 + "jnb": 153, 184 + "syd": 96 185 + }, 186 + { 187 + "timestamp": "Mar 11, 14:00", 188 + "iad": 119, 189 + "ams": 143, 190 + "gru": 98, 191 + "hkg": 130, 192 + "jnb": 134, 193 + "syd": 97 194 + }, 195 + { 196 + "timestamp": "Mar 11, 15:00", 197 + "hkg": 128, 198 + "jnb": 178, 199 + "syd": 82, 200 + "iad": 151, 201 + "ams": 148, 202 + "gru": 108 203 + }, 204 + { 205 + "timestamp": "Mar 11, 16:00", 206 + "syd": 90, 207 + "hkg": 128, 208 + "jnb": 138, 209 + "iad": 130, 210 + "ams": 140, 211 + "gru": 94 212 + }, 213 + { 214 + "timestamp": "Mar 11, 17:00", 215 + "syd": 84, 216 + "jnb": 135, 217 + "hkg": 119, 218 + "iad": 127, 219 + "gru": 133, 220 + "ams": 146 221 + }, 222 + { 223 + "timestamp": "Mar 11, 18:00", 224 + "jnb": 146, 225 + "hkg": 96, 226 + "syd": 86, 227 + "iad": 122, 228 + "gru": 108, 229 + "ams": 139 230 + }, 231 + { 232 + "timestamp": "Mar 11, 19:00", 233 + "iad": 104, 234 + "ams": 180, 235 + "gru": 118, 236 + "hkg": 99, 237 + "jnb": 127, 238 + "syd": 85 239 + }, 240 + { 241 + "timestamp": "Mar 11, 20:00", 242 + "iad": 136, 243 + "ams": 137, 244 + "gru": 109, 245 + "syd": 86, 246 + "hkg": 90, 247 + "jnb": 128 248 + }, 249 + { 250 + "timestamp": "Mar 11, 21:00", 251 + "ams": 138, 252 + "gru": 134, 253 + "iad": 94, 254 + "hkg": 92, 255 + "jnb": 115, 256 + "syd": 94 257 + }, 258 + { 259 + "timestamp": "Mar 11, 22:00", 260 + "ams": 126, 261 + "gru": 132, 262 + "iad": 124, 263 + "syd": 98, 264 + "hkg": 90, 265 + "jnb": 162 266 + }, 267 + { 268 + "timestamp": "Mar 11, 23:00", 269 + "syd": 104, 270 + "hkg": 92, 271 + "jnb": 110, 272 + "ams": 123, 273 + "gru": 118, 274 + "iad": 124 275 + }, 276 + { 277 + "timestamp": "Mar 12, 00:00", 278 + "syd": 97, 279 + "jnb": 106, 280 + "hkg": 92, 281 + "gru": 157, 282 + "ams": 112, 283 + "iad": 121 284 + }, 285 + { 286 + "timestamp": "Mar 12, 01:00", 287 + "syd": 113, 288 + "jnb": 102, 289 + "hkg": 106, 290 + "iad": 120, 291 + "gru": 171, 292 + "ams": 108 293 + }, 294 + { 295 + "timestamp": "Mar 12, 02:00", 296 + "hkg": 101, 297 + "jnb": 76, 298 + "syd": 106, 299 + "iad": 113, 300 + "ams": 97, 301 + "gru": 132 302 + }, 303 + { 304 + "timestamp": "Mar 12, 03:00", 305 + "hkg": 118, 306 + "jnb": 111, 307 + "syd": 110, 308 + "iad": 126, 309 + "ams": 104, 310 + "gru": 112 311 + }, 312 + { 313 + "timestamp": "Mar 12, 04:00", 314 + "iad": 104, 315 + "gru": 90, 316 + "ams": 100, 317 + "syd": 112, 318 + "jnb": 94, 319 + "hkg": 114 320 + }, 321 + { 322 + "timestamp": "Mar 12, 05:00", 323 + "gru": 91, 324 + "iad": 106, 325 + "hkg": 126, 326 + "jnb": 104, 327 + "syd": 116, 328 + "ams": 110 329 + }, 330 + { 331 + "timestamp": "Mar 12, 06:00", 332 + "gru": 86, 333 + "ams": 110, 334 + "iad": 94, 335 + "syd": 108, 336 + "jnb": 120, 337 + "hkg": 116 338 + }, 339 + { 340 + "timestamp": "Mar 12, 07:00", 341 + "syd": 104, 342 + "jnb": 102, 343 + "hkg": 116, 344 + "gru": 89, 345 + "ams": 119, 346 + "iad": 90 347 + }, 348 + { 349 + "timestamp": "Mar 12, 08:00", 350 + "jnb": 121, 351 + "hkg": 113, 352 + "syd": 100, 353 + "gru": 84, 354 + "ams": 138, 355 + "iad": 97 356 + }, 357 + { 358 + "timestamp": "Mar 12, 09:00", 359 + "ams": 154, 360 + "gru": 80, 361 + "iad": 104, 362 + "hkg": 126, 363 + "jnb": 114, 364 + "syd": 106 365 + }, 366 + { 367 + "timestamp": "Mar 12, 10:00", 368 + "ams": 128, 369 + "gru": 63, 370 + "iad": 102, 371 + "syd": 112, 372 + "hkg": 115, 373 + "jnb": 148 374 + }, 375 + { 376 + "timestamp": "Mar 12, 11:00", 377 + "gru": 112, 378 + "ams": 144, 379 + "iad": 100, 380 + "syd": 110, 381 + "jnb": 114, 382 + "hkg": 106 383 + }, 384 + { 385 + "timestamp": "Mar 12, 12:00", 386 + "gru": 87, 387 + "ams": 134, 388 + "iad": 126, 389 + "jnb": 134, 390 + "hkg": 120, 391 + "syd": 104 392 + }, 393 + { 394 + "timestamp": "Mar 12, 13:00", 395 + "syd": 88, 396 + "jnb": 143, 397 + "hkg": 115, 398 + "iad": 114, 399 + "gru": 106, 400 + "ams": 142 401 + }, 402 + { 403 + "timestamp": "Mar 12, 14:00", 404 + "jnb": 142, 405 + "hkg": 134, 406 + "syd": 88, 407 + "iad": 124, 408 + "gru": 112, 409 + "ams": 142 410 + }, 411 + { 412 + "timestamp": "Mar 12, 15:00", 413 + "iad": 149, 414 + "gru": 114, 415 + "ams": 160, 416 + "jnb": 132, 417 + "hkg": 146, 418 + "syd": 89 419 + }, 420 + { 421 + "timestamp": "Mar 12, 16:00", 422 + "iad": 110, 423 + "ams": 143, 424 + "gru": 108, 425 + "syd": 85, 426 + "hkg": 116, 427 + "jnb": 96 428 + }, 429 + { 430 + "timestamp": "Mar 12, 17:00", 431 + "gru": 170, 432 + "ams": 152, 433 + "iad": 144, 434 + "jnb": 142, 435 + "hkg": 120, 436 + "syd": 82 437 + }, 438 + { 439 + "timestamp": "Mar 12, 18:00", 440 + "syd": 88, 441 + "jnb": 125, 442 + "hkg": 105, 443 + "gru": 153, 444 + "ams": 152, 445 + "iad": 119 446 + }, 447 + { 448 + "timestamp": "Mar 12, 19:00", 449 + "hkg": 116, 450 + "jnb": 149, 451 + "syd": 84, 452 + "iad": 137, 453 + "ams": 159, 454 + "gru": 134 455 + }, 456 + { 457 + "timestamp": "Mar 12, 20:00", 458 + "hkg": 94, 459 + "jnb": 127, 460 + "syd": 90, 461 + "ams": 160, 462 + "gru": 130, 463 + "iad": 128 464 + }, 465 + { 466 + "timestamp": "Mar 12, 21:00", 467 + "iad": 134, 468 + "ams": 182, 469 + "gru": 116, 470 + "hkg": 96, 471 + "jnb": 136, 472 + "syd": 87 473 + }, 474 + { 475 + "timestamp": "Mar 12, 22:00", 476 + "iad": 134, 477 + "ams": 136, 478 + "gru": 126, 479 + "hkg": 92, 480 + "jnb": 110, 481 + "syd": 96 482 + }, 483 + { 484 + "timestamp": "Mar 12, 23:00", 485 + "gru": 118, 486 + "ams": 110, 487 + "iad": 128, 488 + "syd": 104, 489 + "jnb": 122, 490 + "hkg": 98 491 + }, 492 + { 493 + "timestamp": "Mar 13, 00:00", 494 + "syd": 100, 495 + "hkg": 98, 496 + "jnb": 102, 497 + "iad": 128, 498 + "ams": 107, 499 + "gru": 126 500 + }, 501 + { 502 + "timestamp": "Mar 13, 01:00", 503 + "iad": 130, 504 + "ams": 100, 505 + "gru": 172, 506 + "hkg": 108, 507 + "jnb": 124, 508 + "syd": 114 509 + }, 510 + { 511 + "timestamp": "Mar 13, 02:00", 512 + "jnb": 102, 513 + "hkg": 114, 514 + "syd": 109, 515 + "iad": 112, 516 + "gru": 116, 517 + "ams": 102 518 + }, 519 + { 520 + "timestamp": "Mar 13, 03:00", 521 + "hkg": 118, 522 + "jnb": 100, 523 + "syd": 113, 524 + "iad": 120, 525 + "ams": 109, 526 + "gru": 136 527 + }, 528 + { 529 + "timestamp": "Mar 13, 04:00", 530 + "jnb": 102, 531 + "hkg": 120, 532 + "syd": 96, 533 + "gru": 151, 534 + "ams": 102, 535 + "iad": 108 536 + }, 537 + { 538 + "timestamp": "Mar 13, 05:00", 539 + "iad": 108, 540 + "ams": 104, 541 + "gru": 128, 542 + "hkg": 114, 543 + "jnb": 80, 544 + "syd": 106 545 + }, 546 + { 547 + "timestamp": "Mar 13, 06:00", 548 + "jnb": 113, 549 + "hkg": 127, 550 + "syd": 108, 551 + "iad": 106, 552 + "gru": 102, 553 + "ams": 114 554 + }, 555 + { 556 + "timestamp": "Mar 13, 07:00", 557 + "gru": 84, 558 + "ams": 120, 559 + "iad": 102, 560 + "syd": 101, 561 + "jnb": 120, 562 + "hkg": 120 563 + }, 564 + { 565 + "timestamp": "Mar 13, 08:00", 566 + "syd": 106, 567 + "hkg": 119, 568 + "jnb": 134, 569 + "iad": 104, 570 + "ams": 122, 571 + "gru": 96 572 + }, 573 + { 574 + "timestamp": "Mar 13, 09:00", 575 + "gru": 92, 576 + "ams": 136, 577 + "iad": 114, 578 + "jnb": 140, 579 + "hkg": 120, 580 + "syd": 113 581 + }, 582 + { 583 + "timestamp": "Mar 13, 10:00", 584 + "jnb": 138, 585 + "hkg": 116, 586 + "syd": 106, 587 + "gru": 136, 588 + "ams": 133, 589 + "iad": 90 590 + }, 591 + { 592 + "timestamp": "Mar 13, 11:00", 593 + "syd": 113, 594 + "hkg": 118, 595 + "jnb": 148, 596 + "iad": 114, 597 + "ams": 140, 598 + "gru": 116 599 + }, 600 + { 601 + "timestamp": "Mar 13, 12:00", 602 + "hkg": 129, 603 + "jnb": 170, 604 + "syd": 102, 605 + "ams": 136, 606 + "gru": 126, 607 + "iad": 117 608 + }, 609 + { 610 + "timestamp": "Mar 13, 13:00", 611 + "iad": 116, 612 + "ams": 140, 613 + "gru": 116, 614 + "hkg": 136, 615 + "jnb": 138, 616 + "syd": 85 617 + }, 618 + { 619 + "timestamp": "Mar 13, 14:00", 620 + "hkg": 142, 621 + "jnb": 134, 622 + "syd": 94, 623 + "iad": 130, 624 + "ams": 140, 625 + "gru": 126 626 + }, 627 + { 628 + "timestamp": "Mar 13, 15:00", 629 + "syd": 88, 630 + "jnb": 157, 631 + "hkg": 152, 632 + "gru": 229, 633 + "ams": 177, 634 + "iad": 148 635 + }, 636 + { 637 + "timestamp": "Mar 13, 16:00", 638 + "iad": 152, 639 + "ams": 163, 640 + "gru": 127, 641 + "syd": 85, 642 + "hkg": 121, 643 + "jnb": 130 644 + }, 645 + { 646 + "timestamp": "Mar 13, 17:00", 647 + "iad": 126, 648 + "ams": 144, 649 + "gru": 140, 650 + "hkg": 127, 651 + "jnb": 140, 652 + "syd": 91 653 + }, 654 + { 655 + "timestamp": "Mar 13, 18:00", 656 + "jnb": 154, 657 + "hkg": 116, 658 + "syd": 87, 659 + "iad": 122, 660 + "gru": 152, 661 + "ams": 153 662 + }, 663 + { 664 + "timestamp": "Mar 13, 19:00", 665 + "syd": 87, 666 + "jnb": 164, 667 + "hkg": 106, 668 + "gru": 161, 669 + "ams": 151, 670 + "iad": 138 671 + }, 672 + { 673 + "timestamp": "Mar 13, 20:00", 674 + "syd": 88, 675 + "hkg": 95, 676 + "jnb": 126, 677 + "iad": 130, 678 + "ams": 158, 679 + "gru": 163 680 + } 681 + ] 682 + }, 683 + "metricsByRegion": [ 684 + { 685 + "region": "syd", 686 + "count": 447, 687 + "ok": 447, 688 + "lastTimestamp": 1710359410395, 689 + "p50Latency": 96, 690 + "p75Latency": 110, 691 + "p90Latency": 124, 692 + "p95Latency": 146, 693 + "p99Latency": 347 694 + }, 695 + { 696 + "region": "gru", 697 + "count": 447, 698 + "ok": 447, 699 + "lastTimestamp": 1710359410395, 700 + "p50Latency": 112, 701 + "p75Latency": 144, 702 + "p90Latency": 195, 703 + "p95Latency": 240, 704 + "p99Latency": 348 705 + }, 706 + { 707 + "region": "iad", 708 + "count": 447, 709 + "ok": 447, 710 + "lastTimestamp": 1710359410395, 711 + "p50Latency": 116, 712 + "p75Latency": 133, 713 + "p90Latency": 152, 714 + "p95Latency": 168, 715 + "p99Latency": 259 716 + }, 717 + { 718 + "region": "ams", 719 + "count": 447, 720 + "ok": 447, 721 + "lastTimestamp": 1710359410395, 722 + "p50Latency": 132, 723 + "p75Latency": 152, 724 + "p90Latency": 177, 725 + "p95Latency": 203, 726 + "p99Latency": 373 727 + }, 728 + { 729 + "region": "hkg", 730 + "count": 447, 731 + "ok": 447, 732 + "lastTimestamp": 1710359410395, 733 + "p50Latency": 111, 734 + "p75Latency": 125, 735 + "p90Latency": 148, 736 + "p95Latency": 162, 737 + "p99Latency": 272 738 + }, 739 + { 740 + "region": "jnb", 741 + "count": 447, 742 + "ok": 447, 743 + "lastTimestamp": 1710359410395, 744 + "p50Latency": 125, 745 + "p75Latency": 148, 746 + "p90Latency": 186, 747 + "p95Latency": 210, 748 + "p99Latency": 349 749 + } 750 + ] 751 + }
+751
apps/web/public/assets/posts/monitoring-vercel/vercel-roulette.json
··· 1 + { 2 + "regions": ["ams", "iad", "hkg", "jnb", "syd", "gru"], 3 + "data": { 4 + "regions": ["ams", "gru", "hkg", "iad", "jnb", "syd"], 5 + "data": [ 6 + { 7 + "timestamp": "Mar 10, 18:00", 8 + "gru": 179, 9 + "ams": 179, 10 + "iad": 61, 11 + "jnb": 317, 12 + "hkg": 292, 13 + "syd": 249 14 + }, 15 + { 16 + "timestamp": "Mar 10, 19:00", 17 + "iad": 460, 18 + "ams": 238, 19 + "gru": 484, 20 + "syd": 286, 21 + "hkg": 402, 22 + "jnb": 357 23 + }, 24 + { 25 + "timestamp": "Mar 10, 20:00", 26 + "gru": 526, 27 + "ams": 557, 28 + "iad": 396, 29 + "syd": 562, 30 + "jnb": 678, 31 + "hkg": 588 32 + }, 33 + { 34 + "timestamp": "Mar 10, 21:00", 35 + "syd": 599, 36 + "jnb": 629, 37 + "hkg": 710, 38 + "iad": 390, 39 + "gru": 506, 40 + "ams": 526 41 + }, 42 + { 43 + "timestamp": "Mar 10, 22:00", 44 + "ams": 504, 45 + "gru": 504, 46 + "iad": 424, 47 + "syd": 560, 48 + "hkg": 584, 49 + "jnb": 662 50 + }, 51 + { 52 + "timestamp": "Mar 10, 23:00", 53 + "iad": 413, 54 + "ams": 534, 55 + "gru": 478, 56 + "hkg": 562, 57 + "jnb": 692, 58 + "syd": 531 59 + }, 60 + { 61 + "timestamp": "Mar 11, 00:00", 62 + "jnb": 375, 63 + "hkg": 286, 64 + "syd": 266, 65 + "iad": 88, 66 + "gru": 284, 67 + "ams": 226 68 + }, 69 + { 70 + "timestamp": "Mar 11, 01:00", 71 + "syd": 281, 72 + "jnb": 374, 73 + "hkg": 286, 74 + "iad": 133, 75 + "gru": 228, 76 + "ams": 292 77 + }, 78 + { 79 + "timestamp": "Mar 11, 02:00", 80 + "syd": 518, 81 + "hkg": 586, 82 + "jnb": 672, 83 + "ams": 522, 84 + "gru": 502, 85 + "iad": 429 86 + }, 87 + { 88 + "timestamp": "Mar 11, 03:00", 89 + "hkg": 548, 90 + "jnb": 663, 91 + "syd": 561, 92 + "iad": 426, 93 + "ams": 520, 94 + "gru": 515 95 + }, 96 + { 97 + "timestamp": "Mar 11, 04:00", 98 + "iad": 129, 99 + "gru": 194, 100 + "ams": 222, 101 + "jnb": 384, 102 + "hkg": 282, 103 + "syd": 260 104 + }, 105 + { 106 + "timestamp": "Mar 11, 05:00", 107 + "syd": 266, 108 + "hkg": 304, 109 + "jnb": 374, 110 + "ams": 194, 111 + "gru": 244, 112 + "iad": 107 113 + }, 114 + { 115 + "timestamp": "Mar 11, 06:00", 116 + "iad": 110, 117 + "gru": 263, 118 + "ams": 216, 119 + "syd": 252, 120 + "jnb": 416, 121 + "hkg": 299 122 + }, 123 + { 124 + "timestamp": "Mar 11, 07:00", 125 + "ams": 572, 126 + "gru": 462, 127 + "iad": 428, 128 + "hkg": 606, 129 + "jnb": 614, 130 + "syd": 562 131 + }, 132 + { 133 + "timestamp": "Mar 11, 08:00", 134 + "hkg": 604, 135 + "jnb": 690, 136 + "syd": 548, 137 + "ams": 513, 138 + "gru": 469, 139 + "iad": 414 140 + }, 141 + { 142 + "timestamp": "Mar 11, 09:00", 143 + "syd": 772, 144 + "jnb": 598, 145 + "hkg": 581, 146 + "iad": 406, 147 + "gru": 528, 148 + "ams": 498 149 + }, 150 + { 151 + "timestamp": "Mar 11, 10:00", 152 + "iad": 440, 153 + "ams": 520, 154 + "gru": 518, 155 + "hkg": 609, 156 + "jnb": 683, 157 + "syd": 560 158 + }, 159 + { 160 + "timestamp": "Mar 11, 11:00", 161 + "iad": 116, 162 + "ams": 243, 163 + "gru": 285, 164 + "hkg": 272, 165 + "jnb": 628, 166 + "syd": 272 167 + }, 168 + { 169 + "timestamp": "Mar 11, 12:00", 170 + "iad": 414, 171 + "gru": 459, 172 + "ams": 666, 173 + "syd": 602, 174 + "jnb": 672, 175 + "hkg": 590 176 + }, 177 + { 178 + "timestamp": "Mar 11, 13:00", 179 + "ams": 230, 180 + "gru": 458, 181 + "iad": 140, 182 + "hkg": 502, 183 + "jnb": 422, 184 + "syd": 254 185 + }, 186 + { 187 + "timestamp": "Mar 11, 14:00", 188 + "iad": 110, 189 + "ams": 202, 190 + "gru": 230, 191 + "hkg": 306, 192 + "jnb": 388, 193 + "syd": 266 194 + }, 195 + { 196 + "timestamp": "Mar 11, 15:00", 197 + "hkg": 586, 198 + "jnb": 644, 199 + "syd": 536, 200 + "iad": 430, 201 + "ams": 536, 202 + "gru": 512 203 + }, 204 + { 205 + "timestamp": "Mar 11, 16:00", 206 + "syd": 269, 207 + "hkg": 300, 208 + "jnb": 440, 209 + "iad": 122, 210 + "ams": 222, 211 + "gru": 230 212 + }, 213 + { 214 + "timestamp": "Mar 11, 17:00", 215 + "syd": 256, 216 + "jnb": 332, 217 + "hkg": 300, 218 + "iad": 100, 219 + "gru": 429, 220 + "ams": 216 221 + }, 222 + { 223 + "timestamp": "Mar 11, 18:00", 224 + "jnb": 390, 225 + "hkg": 265, 226 + "syd": 246, 227 + "iad": 65, 228 + "gru": 211, 229 + "ams": 190 230 + }, 231 + { 232 + "timestamp": "Mar 11, 19:00", 233 + "iad": 118, 234 + "ams": 259, 235 + "gru": 300, 236 + "hkg": 350, 237 + "jnb": 389, 238 + "syd": 256 239 + }, 240 + { 241 + "timestamp": "Mar 11, 20:00", 242 + "iad": 114, 243 + "ams": 218, 244 + "gru": 176, 245 + "syd": 313, 246 + "hkg": 286, 247 + "jnb": 332 248 + }, 249 + { 250 + "timestamp": "Mar 11, 21:00", 251 + "ams": 238, 252 + "gru": 174, 253 + "iad": 110, 254 + "hkg": 294, 255 + "jnb": 662, 256 + "syd": 293 257 + }, 258 + { 259 + "timestamp": "Mar 11, 22:00", 260 + "ams": 230, 261 + "gru": 226, 262 + "iad": 118, 263 + "syd": 247, 264 + "hkg": 289, 265 + "jnb": 384 266 + }, 267 + { 268 + "timestamp": "Mar 11, 23:00", 269 + "syd": 250, 270 + "hkg": 302, 271 + "jnb": 391, 272 + "ams": 212, 273 + "gru": 172, 274 + "iad": 104 275 + }, 276 + { 277 + "timestamp": "Mar 12, 00:00", 278 + "syd": 278, 279 + "jnb": 330, 280 + "hkg": 288, 281 + "gru": 220, 282 + "ams": 210, 283 + "iad": 96 284 + }, 285 + { 286 + "timestamp": "Mar 12, 01:00", 287 + "syd": 284, 288 + "jnb": 405, 289 + "hkg": 294, 290 + "iad": 120, 291 + "gru": 514, 292 + "ams": 242 293 + }, 294 + { 295 + "timestamp": "Mar 12, 02:00", 296 + "hkg": 288, 297 + "jnb": 380, 298 + "syd": 256, 299 + "iad": 80, 300 + "ams": 233, 301 + "gru": 181 302 + }, 303 + { 304 + "timestamp": "Mar 12, 03:00", 305 + "hkg": 297, 306 + "jnb": 373, 307 + "syd": 260, 308 + "iad": 92, 309 + "ams": 202, 310 + "gru": 189 311 + }, 312 + { 313 + "timestamp": "Mar 12, 04:00", 314 + "iad": 134, 315 + "gru": 186, 316 + "ams": 236, 317 + "syd": 251, 318 + "jnb": 400, 319 + "hkg": 271 320 + }, 321 + { 322 + "timestamp": "Mar 12, 05:00", 323 + "gru": 175, 324 + "iad": 112, 325 + "hkg": 272, 326 + "jnb": 404, 327 + "syd": 258, 328 + "ams": 222 329 + }, 330 + { 331 + "timestamp": "Mar 12, 06:00", 332 + "gru": 220, 333 + "ams": 202, 334 + "iad": 86, 335 + "syd": 252, 336 + "jnb": 383, 337 + "hkg": 306 338 + }, 339 + { 340 + "timestamp": "Mar 12, 07:00", 341 + "syd": 246, 342 + "jnb": 406, 343 + "hkg": 288, 344 + "gru": 171, 345 + "ams": 185, 346 + "iad": 64 347 + }, 348 + { 349 + "timestamp": "Mar 12, 08:00", 350 + "jnb": 333, 351 + "hkg": 280, 352 + "syd": 244, 353 + "gru": 266, 354 + "ams": 188, 355 + "iad": 86 356 + }, 357 + { 358 + "timestamp": "Mar 12, 09:00", 359 + "ams": 226, 360 + "gru": 174, 361 + "iad": 82, 362 + "hkg": 283, 363 + "jnb": 351, 364 + "syd": 264 365 + }, 366 + { 367 + "timestamp": "Mar 12, 10:00", 368 + "ams": 200, 369 + "gru": 172, 370 + "iad": 94, 371 + "syd": 248, 372 + "hkg": 277, 373 + "jnb": 392 374 + }, 375 + { 376 + "timestamp": "Mar 12, 11:00", 377 + "gru": 278, 378 + "ams": 252, 379 + "iad": 116, 380 + "syd": 268, 381 + "jnb": 657, 382 + "hkg": 296 383 + }, 384 + { 385 + "timestamp": "Mar 12, 12:00", 386 + "gru": 276, 387 + "ams": 211, 388 + "iad": 109, 389 + "jnb": 382, 390 + "hkg": 289, 391 + "syd": 270 392 + }, 393 + { 394 + "timestamp": "Mar 12, 13:00", 395 + "syd": 324, 396 + "jnb": 381, 397 + "hkg": 302, 398 + "iad": 108, 399 + "gru": 525, 400 + "ams": 243 401 + }, 402 + { 403 + "timestamp": "Mar 12, 14:00", 404 + "jnb": 388, 405 + "hkg": 264, 406 + "syd": 256, 407 + "iad": 112, 408 + "gru": 248, 409 + "ams": 244 410 + }, 411 + { 412 + "timestamp": "Mar 12, 15:00", 413 + "iad": 101, 414 + "gru": 232, 415 + "ams": 326, 416 + "jnb": 387, 417 + "hkg": 260, 418 + "syd": 262 419 + }, 420 + { 421 + "timestamp": "Mar 12, 16:00", 422 + "iad": 132, 423 + "ams": 244, 424 + "gru": 238, 425 + "syd": 256, 426 + "hkg": 535, 427 + "jnb": 374 428 + }, 429 + { 430 + "timestamp": "Mar 12, 17:00", 431 + "gru": 439, 432 + "ams": 255, 433 + "iad": 120, 434 + "jnb": 382, 435 + "hkg": 308, 436 + "syd": 247 437 + }, 438 + { 439 + "timestamp": "Mar 12, 18:00", 440 + "syd": 248, 441 + "jnb": 390, 442 + "hkg": 308, 443 + "gru": 294, 444 + "ams": 185, 445 + "iad": 120 446 + }, 447 + { 448 + "timestamp": "Mar 12, 19:00", 449 + "hkg": 268, 450 + "jnb": 555, 451 + "syd": 259, 452 + "iad": 81, 453 + "ams": 231, 454 + "gru": 276 455 + }, 456 + { 457 + "timestamp": "Mar 12, 20:00", 458 + "hkg": 270, 459 + "jnb": 390, 460 + "syd": 253, 461 + "ams": 172, 462 + "gru": 225, 463 + "iad": 73 464 + }, 465 + { 466 + "timestamp": "Mar 12, 21:00", 467 + "iad": 122, 468 + "ams": 206, 469 + "gru": 176, 470 + "hkg": 302, 471 + "jnb": 373, 472 + "syd": 275 473 + }, 474 + { 475 + "timestamp": "Mar 12, 22:00", 476 + "iad": 108, 477 + "ams": 196, 478 + "gru": 294, 479 + "hkg": 280, 480 + "jnb": 366, 481 + "syd": 262 482 + }, 483 + { 484 + "timestamp": "Mar 12, 23:00", 485 + "gru": 188, 486 + "ams": 184, 487 + "iad": 88, 488 + "syd": 259, 489 + "jnb": 379, 490 + "hkg": 262 491 + }, 492 + { 493 + "timestamp": "Mar 13, 00:00", 494 + "syd": 254, 495 + "hkg": 266, 496 + "jnb": 592, 497 + "iad": 82, 498 + "ams": 182, 499 + "gru": 242 500 + }, 501 + { 502 + "timestamp": "Mar 13, 01:00", 503 + "iad": 110, 504 + "ams": 222, 505 + "gru": 332, 506 + "hkg": 292, 507 + "jnb": 377, 508 + "syd": 264 509 + }, 510 + { 511 + "timestamp": "Mar 13, 02:00", 512 + "jnb": 378, 513 + "hkg": 314, 514 + "syd": 278, 515 + "iad": 104, 516 + "gru": 236, 517 + "ams": 202 518 + }, 519 + { 520 + "timestamp": "Mar 13, 03:00", 521 + "hkg": 302, 522 + "jnb": 384, 523 + "syd": 285, 524 + "iad": 132, 525 + "ams": 228, 526 + "gru": 276 527 + }, 528 + { 529 + "timestamp": "Mar 13, 04:00", 530 + "jnb": 354, 531 + "hkg": 364, 532 + "syd": 250, 533 + "gru": 380, 534 + "ams": 220, 535 + "iad": 109 536 + }, 537 + { 538 + "timestamp": "Mar 13, 05:00", 539 + "iad": 128, 540 + "ams": 213, 541 + "gru": 278, 542 + "hkg": 300, 543 + "jnb": 362, 544 + "syd": 252 545 + }, 546 + { 547 + "timestamp": "Mar 13, 06:00", 548 + "jnb": 362, 549 + "hkg": 278, 550 + "syd": 258, 551 + "iad": 73, 552 + "gru": 226, 553 + "ams": 186 554 + }, 555 + { 556 + "timestamp": "Mar 13, 07:00", 557 + "gru": 238, 558 + "ams": 700, 559 + "iad": 169, 560 + "syd": 274, 561 + "jnb": 412, 562 + "hkg": 328 563 + }, 564 + { 565 + "timestamp": "Mar 13, 08:00", 566 + "syd": 248, 567 + "hkg": 299, 568 + "jnb": 398, 569 + "iad": 104, 570 + "ams": 254, 571 + "gru": 336 572 + }, 573 + { 574 + "timestamp": "Mar 13, 09:00", 575 + "gru": 236, 576 + "ams": 194, 577 + "iad": 80, 578 + "jnb": 398, 579 + "hkg": 318, 580 + "syd": 258 581 + }, 582 + { 583 + "timestamp": "Mar 13, 10:00", 584 + "jnb": 398, 585 + "hkg": 274, 586 + "syd": 250, 587 + "gru": 273, 588 + "ams": 270, 589 + "iad": 96 590 + }, 591 + { 592 + "timestamp": "Mar 13, 11:00", 593 + "syd": 250, 594 + "hkg": 284, 595 + "jnb": 386, 596 + "iad": 104, 597 + "ams": 202, 598 + "gru": 270 599 + }, 600 + { 601 + "timestamp": "Mar 13, 12:00", 602 + "hkg": 282, 603 + "jnb": 380, 604 + "syd": 254, 605 + "ams": 206, 606 + "gru": 300, 607 + "iad": 98 608 + }, 609 + { 610 + "timestamp": "Mar 13, 13:00", 611 + "iad": 89, 612 + "ams": 221, 613 + "gru": 358, 614 + "hkg": 299, 615 + "jnb": 356, 616 + "syd": 252 617 + }, 618 + { 619 + "timestamp": "Mar 13, 14:00", 620 + "hkg": 290, 621 + "jnb": 373, 622 + "syd": 251, 623 + "iad": 142, 624 + "ams": 269, 625 + "gru": 242 626 + }, 627 + { 628 + "timestamp": "Mar 13, 15:00", 629 + "syd": 266, 630 + "jnb": 426, 631 + "hkg": 304, 632 + "gru": 282, 633 + "ams": 216, 634 + "iad": 102 635 + }, 636 + { 637 + "timestamp": "Mar 13, 16:00", 638 + "iad": 110, 639 + "ams": 216, 640 + "gru": 275, 641 + "syd": 258, 642 + "hkg": 300, 643 + "jnb": 379 644 + }, 645 + { 646 + "timestamp": "Mar 13, 17:00", 647 + "iad": 92, 648 + "ams": 221, 649 + "gru": 243, 650 + "hkg": 300, 651 + "jnb": 388, 652 + "syd": 248 653 + }, 654 + { 655 + "timestamp": "Mar 13, 18:00", 656 + "jnb": 335, 657 + "hkg": 302, 658 + "syd": 258, 659 + "iad": 172, 660 + "gru": 288, 661 + "ams": 202 662 + }, 663 + { 664 + "timestamp": "Mar 13, 19:00", 665 + "syd": 350, 666 + "jnb": 600, 667 + "hkg": 306, 668 + "gru": 264, 669 + "ams": 241, 670 + "iad": 111 671 + }, 672 + { 673 + "timestamp": "Mar 13, 20:00", 674 + "syd": 258, 675 + "hkg": 290, 676 + "jnb": 334, 677 + "iad": 144, 678 + "ams": 230, 679 + "gru": 353 680 + } 681 + ] 682 + }, 683 + "metricsByRegion": [ 684 + { 685 + "region": "syd", 686 + "count": 447, 687 + "ok": 447, 688 + "lastTimestamp": 1710359410395, 689 + "p50Latency": 258, 690 + "p75Latency": 516, 691 + "p90Latency": 881, 692 + "p95Latency": 914, 693 + "p99Latency": 1027 694 + }, 695 + { 696 + "region": "gru", 697 + "count": 447, 698 + "ok": 447, 699 + "lastTimestamp": 1710359410395, 700 + "p50Latency": 269, 701 + "p75Latency": 673, 702 + "p90Latency": 851, 703 + "p95Latency": 916, 704 + "p99Latency": 1040 705 + }, 706 + { 707 + "region": "iad", 708 + "count": 447, 709 + "ok": 447, 710 + "lastTimestamp": 1710359410395, 711 + "p50Latency": 113, 712 + "p75Latency": 216, 713 + "p90Latency": 743, 714 + "p95Latency": 777, 715 + "p99Latency": 831 716 + }, 717 + { 718 + "region": "ams", 719 + "count": 447, 720 + "ok": 447, 721 + "lastTimestamp": 1710359410395, 722 + "p50Latency": 225, 723 + "p75Latency": 338, 724 + "p90Latency": 837, 725 + "p95Latency": 872, 726 + "p99Latency": 986 727 + }, 728 + { 729 + "region": "hkg", 730 + "count": 447, 731 + "ok": 447, 732 + "lastTimestamp": 1710359410395, 733 + "p50Latency": 295, 734 + "p75Latency": 504, 735 + "p90Latency": 909, 736 + "p95Latency": 948, 737 + "p99Latency": 1063 738 + }, 739 + { 740 + "region": "jnb", 741 + "count": 447, 742 + "ok": 447, 743 + "lastTimestamp": 1710359410395, 744 + "p50Latency": 385, 745 + "p75Latency": 803, 746 + "p90Latency": 991, 747 + "p95Latency": 1027, 748 + "p99Latency": 1139 749 + } 750 + ] 751 + }
+751
apps/web/public/assets/posts/monitoring-vercel/vercel-warm.json
··· 1 + { 2 + "regions": ["ams", "iad", "hkg", "jnb", "syd", "gru"], 3 + "data": { 4 + "regions": ["ams", "gru", "hkg", "iad", "jnb", "syd"], 5 + "data": [ 6 + { 7 + "timestamp": "Mar 10, 18:00", 8 + "gru": 198, 9 + "ams": 202, 10 + "iad": 68, 11 + "jnb": 388, 12 + "hkg": 302, 13 + "syd": 247 14 + }, 15 + { 16 + "timestamp": "Mar 10, 19:00", 17 + "iad": 68, 18 + "ams": 172, 19 + "gru": 164, 20 + "syd": 245, 21 + "hkg": 271, 22 + "jnb": 384 23 + }, 24 + { 25 + "timestamp": "Mar 10, 20:00", 26 + "gru": 184, 27 + "ams": 178, 28 + "iad": 63, 29 + "syd": 248, 30 + "jnb": 374, 31 + "hkg": 296 32 + }, 33 + { 34 + "timestamp": "Mar 10, 21:00", 35 + "syd": 252, 36 + "jnb": 372, 37 + "hkg": 268, 38 + "iad": 62, 39 + "gru": 172, 40 + "ams": 170 41 + }, 42 + { 43 + "timestamp": "Mar 10, 22:00", 44 + "ams": 174, 45 + "gru": 162, 46 + "iad": 62, 47 + "syd": 243, 48 + "hkg": 292, 49 + "jnb": 368 50 + }, 51 + { 52 + "timestamp": "Mar 10, 23:00", 53 + "iad": 58, 54 + "ams": 170, 55 + "gru": 181, 56 + "hkg": 294, 57 + "jnb": 374, 58 + "syd": 246 59 + }, 60 + { 61 + "timestamp": "Mar 11, 00:00", 62 + "jnb": 343, 63 + "hkg": 274, 64 + "syd": 247, 65 + "iad": 70, 66 + "gru": 184, 67 + "ams": 166 68 + }, 69 + { 70 + "timestamp": "Mar 11, 01:00", 71 + "syd": 246, 72 + "jnb": 370, 73 + "hkg": 316, 74 + "iad": 96, 75 + "gru": 167, 76 + "ams": 168 77 + }, 78 + { 79 + "timestamp": "Mar 11, 02:00", 80 + "syd": 248, 81 + "hkg": 277, 82 + "jnb": 370, 83 + "ams": 166, 84 + "gru": 267, 85 + "iad": 64 86 + }, 87 + { 88 + "timestamp": "Mar 11, 03:00", 89 + "hkg": 268, 90 + "jnb": 371, 91 + "syd": 256, 92 + "iad": 62, 93 + "ams": 168, 94 + "gru": 174 95 + }, 96 + { 97 + "timestamp": "Mar 11, 04:00", 98 + "iad": 60, 99 + "gru": 168, 100 + "ams": 173, 101 + "jnb": 335, 102 + "hkg": 282, 103 + "syd": 250 104 + }, 105 + { 106 + "timestamp": "Mar 11, 05:00", 107 + "syd": 246, 108 + "hkg": 287, 109 + "jnb": 374, 110 + "ams": 170, 111 + "gru": 264, 112 + "iad": 67 113 + }, 114 + { 115 + "timestamp": "Mar 11, 06:00", 116 + "iad": 55, 117 + "gru": 169, 118 + "ams": 170, 119 + "syd": 242, 120 + "jnb": 368, 121 + "hkg": 294 122 + }, 123 + { 124 + "timestamp": "Mar 11, 07:00", 125 + "ams": 213, 126 + "gru": 268, 127 + "iad": 86, 128 + "hkg": 279, 129 + "jnb": 360, 130 + "syd": 263 131 + }, 132 + { 133 + "timestamp": "Mar 11, 08:00", 134 + "hkg": 270, 135 + "jnb": 370, 136 + "syd": 250, 137 + "ams": 172, 138 + "gru": 172, 139 + "iad": 72 140 + }, 141 + { 142 + "timestamp": "Mar 11, 09:00", 143 + "syd": 247, 144 + "jnb": 372, 145 + "hkg": 291, 146 + "iad": 56, 147 + "gru": 184, 148 + "ams": 178 149 + }, 150 + { 151 + "timestamp": "Mar 11, 10:00", 152 + "iad": 57, 153 + "ams": 170, 154 + "gru": 167, 155 + "hkg": 266, 156 + "jnb": 368, 157 + "syd": 246 158 + }, 159 + { 160 + "timestamp": "Mar 11, 11:00", 161 + "iad": 58, 162 + "ams": 192, 163 + "gru": 172, 164 + "hkg": 268, 165 + "jnb": 378, 166 + "syd": 252 167 + }, 168 + { 169 + "timestamp": "Mar 11, 12:00", 170 + "iad": 86, 171 + "gru": 240, 172 + "ams": 178, 173 + "syd": 249, 174 + "jnb": 374, 175 + "hkg": 281 176 + }, 177 + { 178 + "timestamp": "Mar 11, 13:00", 179 + "ams": 173, 180 + "gru": 223, 181 + "iad": 80, 182 + "hkg": 284, 183 + "jnb": 380, 184 + "syd": 246 185 + }, 186 + { 187 + "timestamp": "Mar 11, 14:00", 188 + "iad": 72, 189 + "ams": 193, 190 + "gru": 180, 191 + "hkg": 296, 192 + "jnb": 388, 193 + "syd": 254 194 + }, 195 + { 196 + "timestamp": "Mar 11, 15:00", 197 + "hkg": 286, 198 + "jnb": 382, 199 + "syd": 256, 200 + "iad": 64, 201 + "ams": 169, 202 + "gru": 191 203 + }, 204 + { 205 + "timestamp": "Mar 11, 16:00", 206 + "syd": 258, 207 + "hkg": 339, 208 + "jnb": 420, 209 + "iad": 80, 210 + "ams": 186, 211 + "gru": 174 212 + }, 213 + { 214 + "timestamp": "Mar 11, 17:00", 215 + "syd": 259, 216 + "jnb": 383, 217 + "hkg": 301, 218 + "iad": 76, 219 + "gru": 184, 220 + "ams": 209 221 + }, 222 + { 223 + "timestamp": "Mar 11, 18:00", 224 + "jnb": 384, 225 + "hkg": 294, 226 + "syd": 258, 227 + "iad": 126, 228 + "gru": 214, 229 + "ams": 222 230 + }, 231 + { 232 + "timestamp": "Mar 11, 19:00", 233 + "iad": 64, 234 + "ams": 168, 235 + "gru": 188, 236 + "hkg": 292, 237 + "jnb": 358, 238 + "syd": 250 239 + }, 240 + { 241 + "timestamp": "Mar 11, 20:00", 242 + "iad": 60, 243 + "ams": 175, 244 + "gru": 260, 245 + "syd": 245, 246 + "hkg": 294, 247 + "jnb": 352 248 + }, 249 + { 250 + "timestamp": "Mar 11, 21:00", 251 + "ams": 191, 252 + "gru": 173, 253 + "iad": 65, 254 + "hkg": 286, 255 + "jnb": 387, 256 + "syd": 278 257 + }, 258 + { 259 + "timestamp": "Mar 11, 22:00", 260 + "ams": 179, 261 + "gru": 222, 262 + "iad": 65, 263 + "syd": 248, 264 + "hkg": 273, 265 + "jnb": 376 266 + }, 267 + { 268 + "timestamp": "Mar 11, 23:00", 269 + "syd": 256, 270 + "hkg": 303, 271 + "jnb": 374, 272 + "ams": 170, 273 + "gru": 222, 274 + "iad": 63 275 + }, 276 + { 277 + "timestamp": "Mar 12, 00:00", 278 + "syd": 254, 279 + "jnb": 362, 280 + "hkg": 294, 281 + "gru": 271, 282 + "ams": 180, 283 + "iad": 70 284 + }, 285 + { 286 + "timestamp": "Mar 12, 01:00", 287 + "syd": 252, 288 + "jnb": 414, 289 + "hkg": 300, 290 + "iad": 92, 291 + "gru": 182, 292 + "ams": 184 293 + }, 294 + { 295 + "timestamp": "Mar 12, 02:00", 296 + "hkg": 263, 297 + "jnb": 372, 298 + "syd": 246, 299 + "iad": 57, 300 + "ams": 168, 301 + "gru": 216 302 + }, 303 + { 304 + "timestamp": "Mar 12, 03:00", 305 + "hkg": 290, 306 + "jnb": 368, 307 + "syd": 248, 308 + "iad": 58, 309 + "ams": 172, 310 + "gru": 218 311 + }, 312 + { 313 + "timestamp": "Mar 12, 04:00", 314 + "iad": 56, 315 + "gru": 167, 316 + "ams": 166, 317 + "syd": 247, 318 + "jnb": 370, 319 + "hkg": 274 320 + }, 321 + { 322 + "timestamp": "Mar 12, 05:00", 323 + "gru": 262, 324 + "iad": 57, 325 + "hkg": 265, 326 + "jnb": 323, 327 + "syd": 246, 328 + "ams": 170 329 + }, 330 + { 331 + "timestamp": "Mar 12, 06:00", 332 + "gru": 193, 333 + "ams": 164, 334 + "iad": 56, 335 + "syd": 252, 336 + "jnb": 338, 337 + "hkg": 284 338 + }, 339 + { 340 + "timestamp": "Mar 12, 07:00", 341 + "syd": 245, 342 + "jnb": 379, 343 + "hkg": 296, 344 + "gru": 176, 345 + "ams": 174, 346 + "iad": 56 347 + }, 348 + { 349 + "timestamp": "Mar 12, 08:00", 350 + "jnb": 369, 351 + "hkg": 294, 352 + "syd": 252, 353 + "gru": 263, 354 + "ams": 176, 355 + "iad": 60 356 + }, 357 + { 358 + "timestamp": "Mar 12, 09:00", 359 + "ams": 175, 360 + "gru": 164, 361 + "iad": 60, 362 + "hkg": 280, 363 + "jnb": 384, 364 + "syd": 258 365 + }, 366 + { 367 + "timestamp": "Mar 12, 10:00", 368 + "ams": 175, 369 + "gru": 189, 370 + "iad": 56, 371 + "syd": 251, 372 + "hkg": 264, 373 + "jnb": 381 374 + }, 375 + { 376 + "timestamp": "Mar 12, 11:00", 377 + "gru": 262, 378 + "ams": 172, 379 + "iad": 56, 380 + "syd": 244, 381 + "jnb": 378, 382 + "hkg": 271 383 + }, 384 + { 385 + "timestamp": "Mar 12, 12:00", 386 + "gru": 266, 387 + "ams": 168, 388 + "iad": 58, 389 + "jnb": 384, 390 + "hkg": 280, 391 + "syd": 248 392 + }, 393 + { 394 + "timestamp": "Mar 12, 13:00", 395 + "syd": 250, 396 + "jnb": 357, 397 + "hkg": 289, 398 + "iad": 58, 399 + "gru": 222, 400 + "ams": 170 401 + }, 402 + { 403 + "timestamp": "Mar 12, 14:00", 404 + "jnb": 351, 405 + "hkg": 288, 406 + "syd": 256, 407 + "iad": 58, 408 + "gru": 196, 409 + "ams": 168 410 + }, 411 + { 412 + "timestamp": "Mar 12, 15:00", 413 + "iad": 64, 414 + "gru": 244, 415 + "ams": 175, 416 + "jnb": 376, 417 + "hkg": 284, 418 + "syd": 242 419 + }, 420 + { 421 + "timestamp": "Mar 12, 16:00", 422 + "iad": 62, 423 + "ams": 180, 424 + "gru": 268, 425 + "syd": 242, 426 + "hkg": 286, 427 + "jnb": 378 428 + }, 429 + { 430 + "timestamp": "Mar 12, 17:00", 431 + "gru": 276, 432 + "ams": 180, 433 + "iad": 64, 434 + "jnb": 378, 435 + "hkg": 280, 436 + "syd": 248 437 + }, 438 + { 439 + "timestamp": "Mar 12, 18:00", 440 + "syd": 242, 441 + "jnb": 374, 442 + "hkg": 275, 443 + "gru": 178, 444 + "ams": 164, 445 + "iad": 60 446 + }, 447 + { 448 + "timestamp": "Mar 12, 19:00", 449 + "hkg": 268, 450 + "jnb": 385, 451 + "syd": 247, 452 + "iad": 66, 453 + "ams": 174, 454 + "gru": 175 455 + }, 456 + { 457 + "timestamp": "Mar 12, 20:00", 458 + "hkg": 279, 459 + "jnb": 374, 460 + "syd": 254, 461 + "ams": 168, 462 + "gru": 178, 463 + "iad": 62 464 + }, 465 + { 466 + "timestamp": "Mar 12, 21:00", 467 + "iad": 88, 468 + "ams": 200, 469 + "gru": 286, 470 + "hkg": 302, 471 + "jnb": 378, 472 + "syd": 252 473 + }, 474 + { 475 + "timestamp": "Mar 12, 22:00", 476 + "iad": 67, 477 + "ams": 166, 478 + "gru": 275, 479 + "hkg": 282, 480 + "jnb": 374, 481 + "syd": 249 482 + }, 483 + { 484 + "timestamp": "Mar 12, 23:00", 485 + "gru": 272, 486 + "ams": 195, 487 + "iad": 60, 488 + "syd": 255, 489 + "jnb": 370, 490 + "hkg": 294 491 + }, 492 + { 493 + "timestamp": "Mar 13, 00:00", 494 + "syd": 253, 495 + "hkg": 290, 496 + "jnb": 339, 497 + "iad": 72, 498 + "ams": 208, 499 + "gru": 266 500 + }, 501 + { 502 + "timestamp": "Mar 13, 01:00", 503 + "iad": 67, 504 + "ams": 170, 505 + "gru": 228, 506 + "hkg": 348, 507 + "jnb": 332, 508 + "syd": 252 509 + }, 510 + { 511 + "timestamp": "Mar 13, 02:00", 512 + "jnb": 374, 513 + "hkg": 299, 514 + "syd": 250, 515 + "iad": 58, 516 + "gru": 274, 517 + "ams": 163 518 + }, 519 + { 520 + "timestamp": "Mar 13, 03:00", 521 + "hkg": 296, 522 + "jnb": 374, 523 + "syd": 247, 524 + "iad": 56, 525 + "ams": 167, 526 + "gru": 264 527 + }, 528 + { 529 + "timestamp": "Mar 13, 04:00", 530 + "jnb": 374, 531 + "hkg": 282, 532 + "syd": 257, 533 + "gru": 220, 534 + "ams": 172, 535 + "iad": 56 536 + }, 537 + { 538 + "timestamp": "Mar 13, 05:00", 539 + "iad": 56, 540 + "ams": 165, 541 + "gru": 272, 542 + "hkg": 268, 543 + "jnb": 348, 544 + "syd": 252 545 + }, 546 + { 547 + "timestamp": "Mar 13, 06:00", 548 + "jnb": 383, 549 + "hkg": 306, 550 + "syd": 247, 551 + "iad": 64, 552 + "gru": 170, 553 + "ams": 217 554 + }, 555 + { 556 + "timestamp": "Mar 13, 07:00", 557 + "gru": 272, 558 + "ams": 179, 559 + "iad": 58, 560 + "syd": 250, 561 + "jnb": 352, 562 + "hkg": 284 563 + }, 564 + { 565 + "timestamp": "Mar 13, 08:00", 566 + "syd": 240, 567 + "hkg": 256, 568 + "jnb": 378, 569 + "iad": 61, 570 + "ams": 187, 571 + "gru": 271 572 + }, 573 + { 574 + "timestamp": "Mar 13, 09:00", 575 + "gru": 262, 576 + "ams": 178, 577 + "iad": 60, 578 + "jnb": 382, 579 + "hkg": 261, 580 + "syd": 250 581 + }, 582 + { 583 + "timestamp": "Mar 13, 10:00", 584 + "jnb": 376, 585 + "hkg": 272, 586 + "syd": 248, 587 + "gru": 269, 588 + "ams": 172, 589 + "iad": 56 590 + }, 591 + { 592 + "timestamp": "Mar 13, 11:00", 593 + "syd": 250, 594 + "hkg": 280, 595 + "jnb": 382, 596 + "iad": 60, 597 + "ams": 176, 598 + "gru": 240 599 + }, 600 + { 601 + "timestamp": "Mar 13, 12:00", 602 + "hkg": 275, 603 + "jnb": 372, 604 + "syd": 246, 605 + "ams": 174, 606 + "gru": 266, 607 + "iad": 57 608 + }, 609 + { 610 + "timestamp": "Mar 13, 13:00", 611 + "iad": 70, 612 + "ams": 178, 613 + "gru": 276, 614 + "hkg": 286, 615 + "jnb": 371, 616 + "syd": 246 617 + }, 618 + { 619 + "timestamp": "Mar 13, 14:00", 620 + "hkg": 298, 621 + "jnb": 393, 622 + "syd": 246, 623 + "iad": 80, 624 + "ams": 196, 625 + "gru": 173 626 + }, 627 + { 628 + "timestamp": "Mar 13, 15:00", 629 + "syd": 246, 630 + "jnb": 382, 631 + "hkg": 272, 632 + "gru": 219, 633 + "ams": 178, 634 + "iad": 60 635 + }, 636 + { 637 + "timestamp": "Mar 13, 16:00", 638 + "iad": 62, 639 + "ams": 184, 640 + "gru": 271, 641 + "syd": 243, 642 + "hkg": 278, 643 + "jnb": 346 644 + }, 645 + { 646 + "timestamp": "Mar 13, 17:00", 647 + "iad": 66, 648 + "ams": 180, 649 + "gru": 253, 650 + "hkg": 299, 651 + "jnb": 380, 652 + "syd": 244 653 + }, 654 + { 655 + "timestamp": "Mar 13, 18:00", 656 + "jnb": 371, 657 + "hkg": 294, 658 + "syd": 250, 659 + "iad": 62, 660 + "gru": 240, 661 + "ams": 176 662 + }, 663 + { 664 + "timestamp": "Mar 13, 19:00", 665 + "syd": 247, 666 + "jnb": 338, 667 + "hkg": 272, 668 + "gru": 178, 669 + "ams": 169, 670 + "iad": 66 671 + }, 672 + { 673 + "timestamp": "Mar 13, 20:00", 674 + "syd": 250, 675 + "hkg": 292, 676 + "jnb": 374, 677 + "iad": 66, 678 + "ams": 170, 679 + "gru": 224 680 + } 681 + ] 682 + }, 683 + "metricsByRegion": [ 684 + { 685 + "region": "syd", 686 + "count": 891, 687 + "ok": 891, 688 + "lastTimestamp": 1710359730476, 689 + "p50Latency": 248, 690 + "p75Latency": 260, 691 + "p90Latency": 294, 692 + "p95Latency": 347, 693 + "p99Latency": 886 694 + }, 695 + { 696 + "region": "gru", 697 + "count": 891, 698 + "ok": 891, 699 + "lastTimestamp": 1710359730476, 700 + "p50Latency": 190, 701 + "p75Latency": 275, 702 + "p90Latency": 296, 703 + "p95Latency": 369, 704 + "p99Latency": 705 705 + }, 706 + { 707 + "region": "iad", 708 + "count": 891, 709 + "ok": 891, 710 + "lastTimestamp": 1710359730476, 711 + "p50Latency": 62, 712 + "p75Latency": 77, 713 + "p90Latency": 122, 714 + "p95Latency": 358, 715 + "p99Latency": 767 716 + }, 717 + { 718 + "region": "ams", 719 + "count": 891, 720 + "ok": 891, 721 + "lastTimestamp": 1710359730476, 722 + "p50Latency": 173, 723 + "p75Latency": 191, 724 + "p90Latency": 261, 725 + "p95Latency": 782, 726 + "p99Latency": 869 727 + }, 728 + { 729 + "region": "hkg", 730 + "count": 891, 731 + "ok": 891, 732 + "lastTimestamp": 1710359730476, 733 + "p50Latency": 287, 734 + "p75Latency": 308, 735 + "p90Latency": 431, 736 + "p95Latency": 470, 737 + "p99Latency": 959 738 + }, 739 + { 740 + "region": "jnb", 741 + "count": 891, 742 + "ok": 891, 743 + "lastTimestamp": 1710359730476, 744 + "p50Latency": 374, 745 + "p75Latency": 390, 746 + "p90Latency": 439, 747 + "p95Latency": 522, 748 + "p99Latency": 1003 749 + } 750 + ] 751 + }
+11
apps/web/src/app/app/[workspaceSlug]/(dashboard)/monitors/[id]/overview/page.tsx
··· 16 16 import { getMinutesByInterval, intervals, periods, quantiles } from "../utils"; 17 17 import { CombinedChartWrapper } from "./_components/combined-chart-wrapper"; 18 18 19 + // import { groupDataByTimestamp } from "./_components/utils"; 20 + 19 21 const tb = new OSTinybird({ token: env.TINY_BIRD_API_KEY }); 20 22 21 23 const DEFAULT_QUANTILE = "p95"; ··· 94 96 quantile !== DEFAULT_QUANTILE || 95 97 interval !== DEFAULT_INTERVAL || 96 98 flyRegions.length !== regions.length; 99 + 100 + // GET VALUES FOR BLOG POST 101 + // console.log( 102 + // JSON.stringify({ 103 + // regions, 104 + // data: groupDataByTimestamp(data, period, quantile), 105 + // metricsByRegion, 106 + // }), 107 + // ); 97 108 98 109 return ( 99 110 <div className="grid gap-4">
+4 -4
apps/web/src/content/posts/monitoring-latency-cf-workers-fly-koyeb-raylway-render.mdx
··· 459 459 460 460 We use Fly.io in production and are satisfied with it. 461 461 462 - #### Vercel (coming soon) 462 + #### Vercel 463 463 464 - I haven't included Vercel in this test. But I am currently running a test to 465 - compare the latency of Vercel Edge, Vercel Serverless. Results will be published 466 - soon. 464 + I haven't included Vercel in this test. But we have a blog post comparing Vercel 465 + Serverless vs Edge vs Serverless. You can find it 466 + [here](https://www.openstatus.dev/blog/monitoring-latency-vercel-edge-vs-serverless). 467 467 468 468 If you want to monitor your API or website, create an account on 469 469 [OpenStatus](https://www.openstatus.dev/app/sign-up?ref=blog-monitoring).
+202
apps/web/src/content/posts/monitoring-latency-vercel-edge-vs-serverless.mdx
··· 1 + --- 2 + title: "Monitoring latency: Vercel Serverless Function vs Vercel Edge Function" 3 + description: 4 + In this article, we will compare the latency of Edge Functions vs Serverless 5 + Functions. 6 + author: 7 + name: Thibault Le Ouay Ducasse 8 + url: https://twitter.com/thibaultleouay 9 + publishedAt: 2024-03-14 10 + image: /assets/posts/monitoring-vercel/serverless-vs-edge.png 11 + --- 12 + 13 + In our previous 14 + [article](https://www.openstatus.dev/blog/monitoring-latency-cf-workers-fly-koyeb-raylway-render), 15 + we compared the latency of various cloud providers but did not include Vercel. 16 + This article will compare the latency of Vercel Serverless Function with Vercel 17 + Edge Function. 18 + 19 + We will test a basic Next.js application with the app router. Below is the code 20 + for the routes: 21 + 22 + ```ts 23 + import { NextResponse } from "next/server"; 24 + 25 + export const dynamic = "force-dynamic"; 26 + 27 + export const maxDuration = 25; // to trick and not using the same function as the other ping route 28 + 29 + export async function GET() { 30 + return NextResponse.json({ ping: "pong" }, { status: 200 }); 31 + } 32 + 33 + export async function POST(req: Request) { 34 + const body = await req.json(); 35 + return NextResponse.json({ ping: body }, { status: 200 }); 36 + } 37 + ``` 38 + 39 + We have 4 routes, 3 using the NodeJS runtime and one is using Edge runtime. 40 + 41 + - `/api/ping` is using the NodeJS runtime 42 + - `/api/ping/warm` is using the NodeJS runtime 43 + - `/api/ping/cold` is using the NodeJS runtime 44 + - `/api/ping/edge` is using the Edge runtime 45 + 46 + Each route have a different `maxDuration`, it's a trick to avoid bundling the 47 + functions in the same physical functions. 48 + 49 + Here is the repository of the 50 + [application](https://github.com/openstatusHQ/openstatus-next-latency). 51 + 52 + ## Vercel Serverless Function - NodeJS runtime 53 + 54 + They are using the NodeJS 18 runtime. We have access to all the nodejs API. Our 55 + function are deployed in a single location: iad1 - Washington, D.C., USA. 56 + 57 + Upgrading to Node.js 20 could enhance cold start performance, but it's still in 58 + beta. 59 + 60 + We analyzed the header of each request and observe that all requests are 61 + processed in a data center near our location before being routed to our 62 + serverless location. 63 + 64 + - `ams` -> `fra1` -> `iad1` 65 + - `gru` -> `gru1` -> `iad1` 66 + - `hkg` -> `hkg1` -> `iad1` 67 + - `iad` -> `iad1` -> `iad1` 68 + - `jnb` -> `cpt1` -> `iad1` 69 + - `syd` -> `syd1` -> `iad1` 70 + 71 + We never encountered a request routed to a different data center, and we never 72 + hit the Vercel cache. 73 + 74 + ### Warm - `/api/ping/warm` 75 + 76 + <div className="grid grid-cols-2 gap-4 sm:grid-cols-3 md:grid-cols-5"> 77 + <MetricsCard title="uptime" value={100} suffix="%" variant="positive" /> 78 + <MetricsCard title="fails" value={0} suffix="#" variant="negative" /> 79 + <MetricsCard title="total pings" value={12090} suffix="#" variant="info" /> 80 + <div className="hidden md:col-span-2 md:block" /> 81 + <MetricsCard title="p50" value={246} suffix="ms" /> 82 + <MetricsCard title="p75" value={305} suffix="ms" /> 83 + <MetricsCard title="p90" value={442} suffix="ms" /> 84 + <MetricsCard title="p95" value={563} suffix="ms" /> 85 + <MetricsCard title="p99" value={855} suffix="ms" /> 86 + </div> 87 + 88 + <div className="mt-4"> 89 + <SimpleChart 90 + staticFile="/assets/posts/monitoring-vercel/vercel-warm.json" 91 + caption="Vercel warm p50 latency between 10. Mar and 13. Mar 2024 aggregated in a 1h window." 92 + /> 93 + </div> 94 + 95 + We are pinging this functions every 5 minutes to keep it warm. 96 + 97 + ### Cold - `/api/ping/cold` 98 + 99 + <div className="grid grid-cols-2 gap-4 sm:grid-cols-3 md:grid-cols-5"> 100 + <MetricsCard title="uptime" value={100} suffix="%" variant="positive" /> 101 + <MetricsCard title="fails" value={0} suffix="#" variant="negative" /> 102 + <MetricsCard title="total pings" value={2010} suffix="#" variant="info" /> 103 + <div className="hidden md:col-span-2 md:block" /> 104 + <MetricsCard title="p50" value={859} suffix="ms" /> 105 + <MetricsCard title="p75" value={933} suffix="ms" /> 106 + <MetricsCard title="p90" value={1004} suffix="ms" /> 107 + <MetricsCard title="p95" value={1046} suffix="ms" /> 108 + <MetricsCard title="p99" value={1156} suffix="ms" /> 109 + </div> 110 + 111 + <div className="mt-4"> 112 + <SimpleChart 113 + staticFile="/assets/posts/monitoring-vercel/vercel-cold.json" 114 + caption="Vercel cold p50 latency between 10. Mar and 13. Mar 2024 aggregated in a 1h window." 115 + /> 116 + </div> 117 + 118 + We are pinging this functions every 30 minutes to ensure the functions will be 119 + scaled down. 120 + 121 + ### Cold Roulette - `/api/ping` 122 + 123 + <div className="grid grid-cols-2 gap-4 sm:grid-cols-3 md:grid-cols-5"> 124 + <MetricsCard title="uptime" value={100} suffix="%" variant="positive" /> 125 + <MetricsCard title="fails" value={0} suffix="#" variant="negative" /> 126 + <MetricsCard title="total pings" value={6036} suffix="#" variant="info" /> 127 + <div className="hidden md:col-span-2 md:block" /> 128 + <MetricsCard title="p50" value={305} suffix="ms" /> 129 + <MetricsCard title="p75" value={791} suffix="ms" /> 130 + <MetricsCard title="p90" value={914} suffix="ms" /> 131 + <MetricsCard title="p95" value={972} suffix="ms" /> 132 + <MetricsCard title="p99" value={1086} suffix="ms" /> 133 + </div> 134 + 135 + <div className="mt-4"> 136 + <SimpleChart 137 + staticFile="/assets/posts/monitoring-vercel/vercel-roulette.json" 138 + caption="Vercel roulette p50 latency between 10. Mar and 13. Mar 2024 aggregated in a 1h window." 139 + /> 140 + </div> 141 + 142 + We are pinging this functions every 10 minutes. It's an inflection point where 143 + we never know if the function will be warm or cold. 144 + 145 + ## Vercel Edge Function 146 + 147 + Vercel Edge Functions is using the Edge Runtime. They are deployed globally and 148 + executed in a datacenter close to the user. 149 + 150 + They have limitations compared to the NodeJs runtime, but they have a faster 151 + cold start. 152 + 153 + We analyzed the request header and found that the `X-Vercel-Id` header indicates 154 + the request is processed in a datacenter near the user. 155 + 156 + - `ams` -> `fra1` 157 + - `gru` -> `gru1` 158 + - `hkg` -> `hkg1` 159 + - `iad` -> `iad1` 160 + - `jnb` -> `cpt1` 161 + - `syd` -> `syd1` 162 + 163 + ### Edge - `/api/ping/edge` 164 + 165 + <div className="grid grid-cols-2 gap-4 sm:grid-cols-3 md:grid-cols-5"> 166 + <MetricsCard title="uptime" value={100} suffix="%" variant="positive" /> 167 + <MetricsCard title="fails" value={0} suffix="#" variant="negative" /> 168 + <MetricsCard title="total pings" value={6042} suffix="#" variant="info" /> 169 + <div className="hidden md:col-span-2 md:block" /> 170 + <MetricsCard title="p50" value={106} suffix="ms" /> 171 + <MetricsCard title="p75" value={124} suffix="ms" /> 172 + <MetricsCard title="p90" value={152} suffix="ms" /> 173 + <MetricsCard title="p95" value={178} suffix="ms" /> 174 + <MetricsCard title="p99" value={328} suffix="ms" /> 175 + </div> 176 + 177 + <div className="mt-4"> 178 + <SimpleChart 179 + staticFile="/assets/posts/monitoring-vercel/vercel-edge.json" 180 + caption="Vercel edge p50 latency between 10. Mar and 13. Mar 2024 aggregated in a 1h window." 181 + /> 182 + </div> 183 + 184 + We are pinging this functions every 10 minutes. 185 + 186 + ## Conclusion 187 + 188 + | Runtime | p50 | p95 | p99 | 189 + | --------------------- | --- | ----- | ----- | 190 + | Serverless Cold Start | 859 | 1,046 | 1,156 | 191 + | Serverless Warm | 246 | 563 | 855 | 192 + | Edge | 106 | 178 | 328 | 193 + 194 + Globablly Edge functions are approximately 9 times faster than Serverless 195 + functions during cold starts, but only 2 times faster when the function is warm. 196 + 197 + Edge functions have similar latency regardless of the user's location. If you 198 + value your users and have a worldwide audience, you should consider Edge 199 + Functions. 200 + 201 + Create an account on [OpenStatus](https://www.openstatus.dev/app/sign-up) to 202 + monitor your API and get notified when your latency increases.