container.proto 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. syntax = "proto3";
  2. import "kubemodel/diagnostic.proto";
  3. import "google/protobuf/timestamp.proto";
  4. package kubemodel;
  5. option go_package = "github.com/opencost/opencost/core/pkg/model/pb/kubemodel";
  6. // Container represents a container within a pod (allocated resource)
  7. message Container {
  8. // Identification
  9. string podID = 1;
  10. // Properties
  11. string name = 2;
  12. // Resource lifecycle (only when different from cluster window)
  13. optional google.protobuf.Timestamp creationTime = 3;
  14. optional google.protobuf.Timestamp deletionTime = 4;
  15. // Usage metrics
  16. // CPU usage in core-hours
  17. float cpuCoreHours = 5;
  18. // CPU request average in cores
  19. float cpuCoreRequestAverage = 6;
  20. // CPU usage average in cores
  21. float cpuCoreUsageAverage = 7;
  22. // CPU usage max in cores
  23. float cpuCoreUsageMax = 8;
  24. // RAM usage in byte-hours
  25. int64 ramByteHours = 9;
  26. // RAM request average in bytes
  27. int64 ramBytesRequestAverage = 10;
  28. // RAM usage average in bytes
  29. int64 ramBytesUsageAverage = 11;
  30. // RAM usage max in bytes
  31. int64 ramBytesUsageMax = 12;
  32. // Diagnostic information about this resource
  33. optional DiagnosticResult diagnostic = 99;
  34. }