mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-04-29 10:17:27 +02:00
[core] status: add packageName, packageVersion, hostname, sessionUid
This commit is contained in:
parent
286012d55f
commit
1cd4034784
2 changed files with 25 additions and 7 deletions
|
@ -1,15 +1,20 @@
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
|
|
||||||
|
from contextlib import contextmanager
|
||||||
import importlib
|
import importlib
|
||||||
import inspect
|
import inspect
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
import tempfile
|
import tempfile
|
||||||
from contextlib import contextmanager
|
import uuid
|
||||||
|
|
||||||
from meshroom.core.submitter import BaseSubmitter
|
from meshroom.core.submitter import BaseSubmitter
|
||||||
from . import desc
|
from . import desc
|
||||||
|
|
||||||
|
|
||||||
|
# make a UUID based on the host ID and current time
|
||||||
|
sessionUid = str(uuid.uuid1())
|
||||||
|
|
||||||
cacheFolderName = 'MeshroomCache'
|
cacheFolderName = 'MeshroomCache'
|
||||||
defaultCacheFolder = os.environ.get('MESHROOM_CACHE', os.path.join(tempfile.gettempdir(), cacheFolderName))
|
defaultCacheFolder = os.environ.get('MESHROOM_CACHE', os.path.join(tempfile.gettempdir(), cacheFolderName))
|
||||||
defaultCacheFolder = defaultCacheFolder.replace("\\", "/")
|
defaultCacheFolder = defaultCacheFolder.replace("\\", "/")
|
||||||
|
|
|
@ -430,29 +430,38 @@ class StatusData:
|
||||||
"""
|
"""
|
||||||
dateTimeFormatting = '%Y-%m-%d %H:%M:%S.%f'
|
dateTimeFormatting = '%Y-%m-%d %H:%M:%S.%f'
|
||||||
|
|
||||||
def __init__(self, nodeName, nodeType):
|
def __init__(self, nodeName, nodeType, packageName, packageVersion):
|
||||||
self.status = Status.NONE
|
self.status = Status.NONE
|
||||||
self.nodeName = nodeName
|
self.nodeName = nodeName
|
||||||
self.nodeType = nodeType
|
self.nodeType = nodeType
|
||||||
|
self.packageName = packageName
|
||||||
|
self.packageVersion = packageVersion
|
||||||
self.graph = ''
|
self.graph = ''
|
||||||
self.commandLine = None
|
self.commandLine = None
|
||||||
self.env = None
|
self.env = None
|
||||||
self.startDateTime = ""
|
self.startDateTime = ""
|
||||||
self.endDateTime = ""
|
self.endDateTime = ""
|
||||||
self.elapsedTime = 0
|
self.elapsedTime = 0
|
||||||
|
self.hostname = ""
|
||||||
|
self.sessionUid = meshroom.core.sessionUid
|
||||||
|
|
||||||
def reset(self):
|
def reset(self):
|
||||||
|
self.sessionUid = meshroom.core.sessionUid
|
||||||
self.status = Status.NONE
|
self.status = Status.NONE
|
||||||
self.graph = ''
|
self.graph = ''
|
||||||
self.commandLine = None
|
self.commandLine = None
|
||||||
self.env = None
|
self.env = None
|
||||||
self.elapsedTime = 0
|
self.elapsedTime = 0
|
||||||
|
|
||||||
def initStartDateTime(self):
|
def initStartCompute(self):
|
||||||
|
import platform
|
||||||
|
self.sessionUid = meshroom.core.sessionUid
|
||||||
|
self.hostname = platform.node()
|
||||||
self.startDateTime = datetime.datetime.now().strftime(self.dateTimeFormatting)
|
self.startDateTime = datetime.datetime.now().strftime(self.dateTimeFormatting)
|
||||||
# to get datetime obj: datetime.datetime.strptime(obj, self.dateTimeFormatting)
|
# to get datetime obj: datetime.datetime.strptime(obj, self.dateTimeFormatting)
|
||||||
|
|
||||||
def initEndDateTime(self):
|
def initEndCompute(self):
|
||||||
|
self.sessionUid = meshroom.core.sessionUid
|
||||||
self.endDateTime = datetime.datetime.now().strftime(self.dateTimeFormatting)
|
self.endDateTime = datetime.datetime.now().strftime(self.dateTimeFormatting)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
@ -468,12 +477,16 @@ class StatusData:
|
||||||
self.status = Status._member_map_[d['status']]
|
self.status = Status._member_map_[d['status']]
|
||||||
self.nodeName = d.get('nodeName', '')
|
self.nodeName = d.get('nodeName', '')
|
||||||
self.nodeType = d.get('nodeType', '')
|
self.nodeType = d.get('nodeType', '')
|
||||||
|
self.packageName = d.get('packageName', '')
|
||||||
|
self.packageVersion = d.get('packageVersion', '')
|
||||||
self.graph = d.get('graph', '')
|
self.graph = d.get('graph', '')
|
||||||
self.commandLine = d.get('commandLine', '')
|
self.commandLine = d.get('commandLine', '')
|
||||||
self.env = d.get('env', '')
|
self.env = d.get('env', '')
|
||||||
self.startDateTime = d.get('startDateTime', '')
|
self.startDateTime = d.get('startDateTime', '')
|
||||||
self.endDateTime = d.get('endDateTime', '')
|
self.endDateTime = d.get('endDateTime', '')
|
||||||
self.elapsedTime = d.get('elapsedTime', '')
|
self.elapsedTime = d.get('elapsedTime', '')
|
||||||
|
self.hostname = d.get('hostname', '')
|
||||||
|
self.sessionUid = d.get('sessionUid', '')
|
||||||
|
|
||||||
|
|
||||||
runningProcesses = {}
|
runningProcesses = {}
|
||||||
|
@ -490,7 +503,7 @@ class NodeChunk(BaseObject):
|
||||||
super(NodeChunk, self).__init__(node)
|
super(NodeChunk, self).__init__(node)
|
||||||
self.node = node
|
self.node = node
|
||||||
self.range = range
|
self.range = range
|
||||||
self.status = StatusData(node.name, node.nodeType)
|
self.status = StatusData(node.name, node.nodeType, node.packageName, node.packageVersion)
|
||||||
self.statistics = stats.Statistics()
|
self.statistics = stats.Statistics()
|
||||||
self._subprocess = None
|
self._subprocess = None
|
||||||
|
|
||||||
|
@ -598,7 +611,7 @@ class NodeChunk(BaseObject):
|
||||||
return
|
return
|
||||||
global runningProcesses
|
global runningProcesses
|
||||||
runningProcesses[self.name] = self
|
runningProcesses[self.name] = self
|
||||||
self.status.initStartDateTime()
|
self.status.initStartCompute()
|
||||||
startTime = time.time()
|
startTime = time.time()
|
||||||
self.upgradeStatusTo(Status.RUNNING)
|
self.upgradeStatusTo(Status.RUNNING)
|
||||||
self.statThread = stats.StatisticsThread(self)
|
self.statThread = stats.StatisticsThread(self)
|
||||||
|
@ -612,7 +625,7 @@ class NodeChunk(BaseObject):
|
||||||
self.upgradeStatusTo(Status.STOPPED)
|
self.upgradeStatusTo(Status.STOPPED)
|
||||||
raise
|
raise
|
||||||
finally:
|
finally:
|
||||||
self.status.initEndDateTime()
|
self.status.initEndCompute()
|
||||||
self.status.elapsedTime = time.time() - startTime
|
self.status.elapsedTime = time.time() - startTime
|
||||||
print(' - elapsed time:', self.status.elapsedTimeStr)
|
print(' - elapsed time:', self.status.elapsedTimeStr)
|
||||||
# ask and wait for the stats thread to stop
|
# ask and wait for the stats thread to stop
|
||||||
|
|
Loading…
Add table
Reference in a new issue