--- squid-2.2.DEVEL3v3a/src/delay_pools.c Sun Feb 14 08:35:01 1999 +++ squid-2.2.DEVEL3v3/src/delay_pools.c Wed Mar 10 12:08:41 1999 @@ -38,6 +38,12 @@ #if DELAY_POOLS #include "squid.h" +#define HTML_FONT_RED "" +#define HTML_FONT_YELLOW "" +#define HTML_FONT_END "" +#define HTML_BOLD "" +#define HTML_BOLD_END "" + struct _class1DelayPool { int aggregate; }; @@ -560,6 +566,15 @@ storeAppendPrintf(sentry, "\tAggregate:\n"); storeAppendPrintf(sentry, "\t\tMax: %d\n", rate->aggregate.max_bytes); storeAppendPrintf(sentry, "\t\tRestore: %d\n", rate->aggregate.restore_bps); +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( ag < rate->aggregate.max_bytes ) + if( ag < (rate->aggregate.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, "\t\tCurrent: " HTML_FONT_RED HTML_BOLD + "%d" HTML_BOLD_END HTML_FONT_END "\n\n", ag); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, "\t\tCurrent: " HTML_FONT_YELLOW HTML_BOLD + "%d" HTML_BOLD_END HTML_FONT_END "\n\n", ag); + else /* 100% */ storeAppendPrintf(sentry, "\t\tCurrent: %d\n\n", ag); } @@ -594,12 +609,36 @@ for (i = 0;; i++) { if (class2->individual_map[i] == 255) break; - storeAppendPrintf(sentry, "%d:%d ", class2->individual_map[i], - class2->individual[i]); +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( class2->individual[i] < rate->individual.max_bytes ) + if( class2->individual[i] < ( rate->individual.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, HTML_FONT_RED HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class2->individual_map[i], class2->individual[i]); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, HTML_FONT_YELLOW HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class2->individual_map[i], class2->individual[i]); + else /* 100% */ + storeAppendPrintf(sentry, "%d:%d ", + class2->individual_map[i], class2->individual[i]); shown = 1; } if (class2->individual_255_used) { - storeAppendPrintf(sentry, "%d:%d ", 255, class2->individual[255]); + i = 255; +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( class2->individual[i] < rate->individual.max_bytes ) + if( class2->individual[i] < ( rate->individual.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, HTML_FONT_RED HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class2->individual_map[i], class2->individual[i]); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, HTML_FONT_YELLOW HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class2->individual_map[i], class2->individual[i]); + else /* 100% */ + storeAppendPrintf(sentry, "%d:%d ", + class2->individual_map[i], class2->individual[i]); shown = 1; } if (!shown) @@ -627,12 +666,36 @@ for (i = 0;; i++) { if (class3->network_map[i] == 255) break; - storeAppendPrintf(sentry, "%d:%d ", class3->network_map[i], - class3->network[i]); +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( class3->network[i] < rate->network.max_bytes ) + if( class3->network[i] < ( rate->network.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, HTML_FONT_RED HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->network_map[i], class3->network[i]); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, HTML_FONT_YELLOW HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->network_map[i], class3->network[i]); + else /* 100% */ + storeAppendPrintf(sentry, "%d:%d ", + class3->network_map[i], class3->network[i]); shown = 1; } if (class3->network_255_used) { - storeAppendPrintf(sentry, "%d:%d ", 255, class3->network[255]); + i = 255; +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( class3->network[i] < rate->network.max_bytes ) + if( class3->network[i] < ( rate->network.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, HTML_FONT_RED HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->network_map[i], class3->network[i]); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, HTML_FONT_YELLOW HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->network_map[i], class3->network[i]); + else /* 100% */ + storeAppendPrintf(sentry, "%d:%d ", + class3->network_map[i], class3->network[i]); shown = 1; } if (!shown) @@ -655,11 +718,35 @@ for (j = 0;; j++) { if (class3->individual_map[i][j] == 255) break; - storeAppendPrintf(sentry, "%d:%d ", class3->individual_map[i][j], - class3->individual[(i << 8) | j]); +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( class3->individual[(i << 8) | j] < rate->individual.max_bytes ) + if( class3->individual[(i << 8) | j] < ( rate->individual.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, HTML_FONT_RED HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->individual_map[i][j], class3->individual[(i << 8) | j]); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, HTML_FONT_YELLOW HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->individual_map[i][j], class3->individual[(i << 8) | j]); + else /* 100% */ + storeAppendPrintf(sentry, "%d:%d ", + class3->individual_map[i][j], class3->individual[(i << 8) | j]); } if (class3->individual_255_used[i / 8] & (1 << (i % 8))) { - storeAppendPrintf(sentry, "%d:%d ", 255, class3->individual[(i << 8) | 255]); + j = 255; +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( class3->individual[(i << 8) | j] < rate->individual.max_bytes ) + if( class3->individual[(i << 8) | j] < ( rate->individual.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, HTML_FONT_RED HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->individual_map[i][j], class3->individual[(i << 8) | j]); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, HTML_FONT_YELLOW HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->individual_map[i][j], class3->individual[(i << 8) | j]); + else /* 100% */ + storeAppendPrintf(sentry, "%d:%d ", + class3->individual_map[i][j], class3->individual[(i << 8) | j]); } storeAppendPrintf(sentry, "\n"); } @@ -669,11 +756,36 @@ for (j = 0;; j++) { if (class3->individual_map[255][j] == 255) break; - storeAppendPrintf(sentry, "%d:%d ", class3->individual_map[255][j], - class3->individual[(255 << 8) | j]); + i = 255; +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( class3->individual[(i << 8) | j] < rate->individual.max_bytes ) + if( class3->individual[(i << 8) | j] < ( rate->individual.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, HTML_FONT_RED HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->individual_map[i][j], class3->individual[(i << 8) | j]); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, HTML_FONT_YELLOW HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->individual_map[i][j], class3->individual[(i << 8) | j]); + else /* 100% */ + storeAppendPrintf(sentry, "%d:%d ", + class3->individual_map[i][j], class3->individual[(i << 8) | j]); } if (class3->individual_255_used[255 / 8] & (1 << (255 % 8))) { - storeAppendPrintf(sentry, "%d:%d ", 255, class3->individual[(255 << 8) | 255]); + i = j = 255; +/* Show some colors in the delay pools report by Pedro Ribeiro */ + if( class3->individual[(i << 8) | j] < rate->individual.max_bytes ) + if( class3->individual[(i << 8) | j] < ( rate->individual.max_bytes >> 1) ) /* 0% ... 50% */ + storeAppendPrintf(sentry, HTML_FONT_RED HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->individual_map[i][j], class3->individual[(i << 8) | j]); + else /* 50% ... 100% */ + storeAppendPrintf(sentry, HTML_FONT_YELLOW HTML_BOLD "%d:%d " + HTML_BOLD_END HTML_FONT_END, + class3->individual_map[i][j], class3->individual[(i << 8) | j]); + else /* 100% */ + storeAppendPrintf(sentry, "%d:%d ", + class3->individual_map[i][j], class3->individual[(i << 8) | j]); } storeAppendPrintf(sentry, "\n"); }