ServerStats.tsx 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import React from 'react';
  2. import { inject, observer } from 'mobx-react';
  3. import PageHeader from 'app/core/components/PageHeader/PageHeader';
  4. import { NavModel, NavModelSrv } from 'app/core/nav_model_srv';
  5. export interface IProps {
  6. store: any;
  7. }
  8. @inject('store')
  9. @observer
  10. export class ServerStats extends React.Component<IProps, any> {
  11. constructor(props) {
  12. super(props);
  13. // this.navModel = new NavModelSrv().getNav('cfg', 'admin', 'server-stats', 1);
  14. this.props.store.nav.load('cfg', 'admin', 'server-stats');
  15. this.props.store.serverStats.load();
  16. }
  17. render() {
  18. return (
  19. <div>
  20. <PageHeader model={this.props.store.nav} />
  21. <div className="page-container page-body">
  22. <table className="filter-table form-inline">
  23. <thead>
  24. <tr>
  25. <th>Name</th>
  26. <th>Value</th>
  27. </tr>
  28. </thead>
  29. <tbody>{this.props.store.serverStats.stats.map(StatItem)}</tbody>
  30. </table>
  31. </div>
  32. </div>
  33. );
  34. }
  35. }
  36. function StatItem(stat) {
  37. return (
  38. <tr key={stat.name}>
  39. <td>{stat.name}</td>
  40. <td>{stat.value}</td>
  41. </tr>
  42. );
  43. }