Revision e780930a
b/snf-cyclades-app/synnefo/admin/stats.py | ||
---|---|---|
43 | 43 |
|
44 | 44 |
from snf_django.lib.astakos import UserCache |
45 | 45 |
from synnefo.db.models import VirtualMachine, Network, Backend |
46 |
from synnefo.api.util import get_image
|
|
46 |
from synnefo.plankton.utils import image_backend
|
|
47 | 47 |
from synnefo.logic import backend as backend_mod |
48 | 48 |
|
49 | 49 |
|
... | ... | |
122 | 122 |
|
123 | 123 |
active_servers_images = active_servers.values("imageid", "userid")\ |
124 | 124 |
.annotate(number=Count("imageid")) |
125 |
|
|
125 | 126 |
image_cache = ImageCache() |
126 | 127 |
image_stats = defaultdict(int) |
127 | 128 |
for result in active_servers_images: |
... | ... | |
200 | 201 |
def get_image(self, imageid, userid): |
201 | 202 |
if not imageid in self.images: |
202 | 203 |
try: |
203 |
image = get_image(imageid, userid) |
|
204 |
with image_backend(userid) as ib: |
|
205 |
image = ib.get_image(imageid) |
|
206 |
properties = image.get("properties") |
|
207 |
os = properties.get("os", |
|
208 |
properties.get("osfamily", "unknown")) |
|
204 | 209 |
owner = image["owner"] |
205 | 210 |
owner = "system" if image["owner"] == self.system_user_uuid\ |
206 | 211 |
else "user" |
207 |
self.images[imageid] = owner + ":" + image["name"]
|
|
212 |
self.images[imageid] = owner + ":" + os
|
|
208 | 213 |
except Exception: |
209 | 214 |
self.images[imageid] = "unknown:unknown" |
210 | 215 |
|
Also available in: Unified diff