Handle csv output when the command is not based on the device

Fix the error only one csv line can be printed out when output
is not based on device.

Change-Id: Idacc5d98acc223e932fb3d46c888bfa04778b73c


[ROCm/rocm_smi_lib commit: 80d650b95a]
이 커밋은 다음에 포함됨:
Bill(Shuzhou) Liu가 2023-07-26 15:28:18 -05:00를 커밋했습니다
1 부모 60a4b3cb19
커밋 aca23ecb0b
1 파일이 변경됨
+4 -13
+4 -13
파일 보기
@@ -112,19 +112,10 @@ def formatCsv(deviceList):
if outputType == 'system':
jsonobj = json.loads(jsondata)
keylist = header
for record in jsonobj:
my_string += str(record)
for key in keylist:
if key == 'system':
tempstr = str(jsonobj[record])
tempstr = tempstr[tempstr.find('\'')+1:]
tempstr = tempstr[:tempstr.find('\'')]
# Force output device type to 'system'
my_string += ',%s\nsystem,%s' % (tempstr, jsonobj[record][tempstr])
my_string += '\n'
# Force output device type to 'system'
if my_string.startswith('system'):
my_string = 'device' + my_string[6:]
for record in jsonobj['system']:
my_string += "\"%s\", \"%s\"\n" % (record, jsonobj['system'][record])
# add header
my_string = "name, value\n" + my_string
return my_string
headerkeys = []
# Separate device-specific information from system-level information