ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/examples/network_traffic.c
(Generate patch)

Comparing projects/libstatgrab/examples/network_traffic.c (file contents):
Revision 1.7 by tdb, Fri Jan 16 15:54:52 2004 UTC vs.
Revision 1.10 by tdb, Mon Mar 8 11:58:20 2004 UTC

# Line 16 | Line 16
16   * You should have received a copy of the GNU General Public License
17   * along with this program; if not, write to the Free Software
18   * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
19 + *
20 + * $Id$
21   */
22  
23   /* A very basic example of how to get the network statistics from the system
# Line 97 | Line 99 | int main(int argc, char **argv){
99  
100                  long long total_tx=0;
101                  long long total_rx=0;
102 +                long long total_ipackets=0;
103 +                long long total_opackets=0;
104 +                long long total_ierrors=0;
105 +                long long total_oerrors=0;
106 +                long long total_collisions=0;
107  
108                  for(x = 0; x < num_network_stats; x++){
109                          /* Print at location 2, linenumber the interface name */
110 <                        printf("\033[%d;2H%-25s : %-10s", line_number++, "Network Interface Name", network_stats->interface_name);
110 >                        printf("\033[%d;2H%-30s : %-10s", line_number++, "Network Interface Name", network_stats->interface_name);
111                          /* Print out at the correct location the traffic in the requsted units passed at command time */
112                          switch(units){
113                                  case 'b':
114 <                                        printf("\033[%d;2H%-25s : %8lld b", line_number++, "Network Interface Rx", network_stats->rx);
115 <                                        printf("\033[%d;2H%-25s : %8lld b", line_number++, "Network Interface Tx", network_stats->tx);
114 >                                        printf("\033[%d;2H%-30s : %8lld b", line_number++, "Network Interface Rx", network_stats->rx);
115 >                                        printf("\033[%d;2H%-30s : %8lld b", line_number++, "Network Interface Tx", network_stats->tx);
116                                          break;
117                                  case 'k':
118 <                                        printf("\033[%d;2H%-25s : %5lld k", line_number++, "Network Interface Rx", (network_stats->rx / 1024));
119 <                                        printf("\033[%d;2H%-25s : %5lld", line_number++, "Network Interface Tx", (network_stats->tx / 1024));
118 >                                        printf("\033[%d;2H%-30s : %5lld k", line_number++, "Network Interface Rx", (network_stats->rx / 1024));
119 >                                        printf("\033[%d;2H%-30s : %5lld", line_number++, "Network Interface Tx", (network_stats->tx / 1024));
120                                          break;
121                                  case 'm':
122 <                                        printf("\033[%d;2H%-25s : %5.2f m", line_number++, "Network Interface Rx", network_stats->rx / (1024.00*1024.00));
123 <                                        printf("\033[%d;2H%-25s : %5.2f m", line_number++, "Network Interface Tx", network_stats->tx / (1024.00*1024.00));
122 >                                        printf("\033[%d;2H%-30s : %5.2f m", line_number++, "Network Interface Rx", network_stats->rx / (1024.00*1024.00));
123 >                                        printf("\033[%d;2H%-30s : %5.2f m", line_number++, "Network Interface Tx", network_stats->tx / (1024.00*1024.00));
124                          }
125 <                        printf("\033[%d;2H%-25s : %ld ", line_number++, "Network Interface systime", (long) network_stats->systime);
125 >                        printf("\033[%d;2H%-30s : %ld ", line_number++, "Network Interface packets in", network_stats->ipackets);
126 >                        printf("\033[%d;2H%-30s : %ld ", line_number++, "Network Interface packets out", network_stats->opackets);
127 >                        printf("\033[%d;2H%-30s : %ld ", line_number++, "Network Interface errors in", network_stats->ierrors);
128 >                        printf("\033[%d;2H%-30s : %ld ", line_number++, "Network Interface errors out", network_stats->oerrors);
129 >                        printf("\033[%d;2H%-30s : %ld ", line_number++, "Network Interface collisions", network_stats->collisions);
130 >                        printf("\033[%d;2H%-30s : %ld ", line_number++, "Network Interface systime", (long) network_stats->systime);
131  
132                          /* Add a blank line between interfaces */      
133                          line_number++;
# Line 123 | Line 135 | int main(int argc, char **argv){
135                          /* Add up this interface to the total so we can display a "total" network io" */
136                          total_tx+=network_stats->tx;
137                          total_rx+=network_stats->rx;
138 +                        total_ipackets+=network_stats->ipackets;
139 +                        total_opackets+=network_stats->opackets;
140 +                        total_ierrors+=network_stats->ierrors;
141 +                        total_oerrors+=network_stats->oerrors;
142 +                        total_collisions+=network_stats->collisions;
143  
144                          /* Move the pointer onto the next interface. Since this returns a static buffer, we dont need
145                           * to keep track of the orginal pointer to free later */
146                          network_stats++;
147                  }
148  
149 <                printf("\033[%d;2H%-25s : %-10s", line_number++, "Network Interface Name", "Total Network IO");
149 >                printf("\033[%d;2H%-30s : %-10s", line_number++, "Network Interface Name", "Total Network IO");
150                  switch(units){
151                          case 'b':
152 <                                printf("\033[%d;2H%-25s : %8lld b", line_number++, "Network Total Rx", total_rx);
153 <                                printf("\033[%d;2H%-25s : %8lld b", line_number++, "Network Total Tx", total_tx);
152 >                                printf("\033[%d;2H%-30s : %8lld b", line_number++, "Network Total Rx", total_rx);
153 >                                printf("\033[%d;2H%-30s : %8lld b", line_number++, "Network Total Tx", total_tx);
154                                  break;
155                          case 'k':
156 <                                printf("\033[%d;2H%-25s : %5lld k", line_number++, "Network Total Rx", (total_rx / 1024));
157 <                                printf("\033[%d;2H%-25s : %5lld k", line_number++, "Network Total Tx", (total_tx / 1024));
156 >                                printf("\033[%d;2H%-30s : %5lld k", line_number++, "Network Total Rx", (total_rx / 1024));
157 >                                printf("\033[%d;2H%-30s : %5lld k", line_number++, "Network Total Tx", (total_tx / 1024));
158                                  break;
159                          case 'm':
160 <                                printf("\033[%d;2H%-25s : %5.2f m", line_number++, "Network Total Rx", (total_rx  / (1024.00*1024.00)));
161 <                                printf("\033[%d;2H%-25s : %5.2f m", line_number++, "Network Total Tx", (total_tx  / (1024.00*1024.00)));
160 >                                printf("\033[%d;2H%-30s : %5.2f m", line_number++, "Network Total Rx", (total_rx  / (1024.00*1024.00)));
161 >                                printf("\033[%d;2H%-30s : %5.2f m", line_number++, "Network Total Tx", (total_tx  / (1024.00*1024.00)));
162                                  break;
163                  }
164 +                printf("\033[%d;2H%-30s : %lld ", line_number++, "Network Total packets in", total_ipackets);
165 +                printf("\033[%d;2H%-30s : %lld ", line_number++, "Network Total packets out", total_opackets);
166 +                printf("\033[%d;2H%-30s : %lld ", line_number++, "Network Total errors in", total_ierrors);
167 +                printf("\033[%d;2H%-30s : %lld ", line_number++, "Network Total errors out", total_oerrors);
168 +                printf("\033[%d;2H%-30s : %lld ", line_number++, "Network Total collisions", total_collisions);
169  
170                  fflush(stdout);
171  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines