lots of php proofreading and html tab tidying up
This commit is contained in:
183
files/archive/archive.py
Normal file
183
files/archive/archive.py
Normal file
@ -0,0 +1,183 @@
|
||||
|
||||
|
||||
# dynamic data
|
||||
# this will go to the redis server
|
||||
@app.route('/dynamic_data', methods=['GET'])
|
||||
def dynamic_data():
|
||||
return jsonify(get_dynamic_data())
|
||||
|
||||
# static data
|
||||
@app.route('/static_data', methods=['GET'])
|
||||
def static_data():
|
||||
return jsonify(get_static_data())
|
||||
|
||||
# redis data
|
||||
@app.route('/redis_data', methods=['GET'])
|
||||
def redis_data():
|
||||
return jsonify(get_client_redis_data(human_readable = False))
|
||||
|
||||
# redis strings
|
||||
@app.route('/redis_strings', methods=['GET'])
|
||||
def redis_strings():
|
||||
return jsonify(get_client_redis_data(human_readable = True))
|
||||
|
||||
# socket timer data
|
||||
@app.route('/timer_data', methods=['GET'])
|
||||
def timer_data():
|
||||
time_now = time.time()
|
||||
time_lapsed = time_now - float(cosmostat_client.recent_check)
|
||||
result = {
|
||||
"Time Lapsed": time_lapsed,
|
||||
"Current Time Value": time_now,
|
||||
"Last Update Value": float(cosmostat_client.recent_check),
|
||||
"System Updating": cosmostat_client.check_system_timer()
|
||||
}
|
||||
return jsonify(result)
|
||||
|
||||
|
||||
def get_static_data(human_readable = False):
|
||||
result = []
|
||||
return cosmostat_client.get_static_metrics(human_readable)
|
||||
|
||||
|
||||
|
||||
def generate_state_definition():
|
||||
result = {
|
||||
"uuid": cosmostat_client.uuid,
|
||||
"state_definition": get_php_summary()
|
||||
}
|
||||
return result
|
||||
|
||||
|
||||
# api to validate Cosmostat Class
|
||||
@app.route('/client_summary', methods=['GET'])
|
||||
def client_summary():
|
||||
result = []
|
||||
if run_cosmostat_server():
|
||||
result = get_client_summary()
|
||||
else:
|
||||
result = {"message": "server not running on this endpoint"}
|
||||
return jsonify(result)
|
||||
|
||||
|
||||
# api to get all hostnames
|
||||
@app.route('/client_hostnames', methods=['GET'])
|
||||
def client_hostnames():
|
||||
result = []
|
||||
if run_cosmostat_server():
|
||||
result = cosmostat_server.get_client_hostnames(send_age = True)
|
||||
else:
|
||||
result = {"message": "server not running on this endpoint"}
|
||||
return jsonify(result)
|
||||
|
||||
# api to get server redis data
|
||||
@app.route('/get_server_redis', methods=['GET'])
|
||||
def get_server_redis():
|
||||
result = []
|
||||
if run_cosmostat_server():
|
||||
result = get_server_redis_data()
|
||||
else:
|
||||
result = {"message": "server not running on this endpoint"}
|
||||
return jsonify(result)
|
||||
|
||||
# api to get server redis data
|
||||
@app.route('/client_ip_summary', methods=['GET'])
|
||||
def client_ip_summary():
|
||||
result = []
|
||||
if run_cosmostat_server():
|
||||
result = get_client_ip_summary()
|
||||
else:
|
||||
result = {"message": "server not running on this endpoint"}
|
||||
return jsonify(result)
|
||||
|
||||
|
||||
# generate cosmostat server summary
|
||||
def get_client_summary():
|
||||
result = []
|
||||
for client in cosmostat_server.systems:
|
||||
data_age = time.time() - client.data_timestamp
|
||||
this_client = {
|
||||
"uuid": client.uuid,
|
||||
"short_id": client.name,
|
||||
"data_age": data_age,
|
||||
"hostname": client.hostname
|
||||
}
|
||||
result.append(this_client)
|
||||
if result == []:
|
||||
result = {"message": "no clients reporting"}
|
||||
return result
|
||||
|
||||
########################################################
|
||||
# various data functions
|
||||
########################################################
|
||||
|
||||
# complex data type return
|
||||
def get_property_summary(self, type = None):
|
||||
these_properties = []
|
||||
if type == None:
|
||||
for name, value in self._properties.items():
|
||||
these_properties.append({"Property": name, "Value": value})
|
||||
else:
|
||||
for name, value in self._properties.items():
|
||||
if type in name:
|
||||
these_properties.append({"Property": name, "Value": value})
|
||||
result = {
|
||||
"Source": self.name,
|
||||
"Component Type": self.type,
|
||||
"Properties": these_properties
|
||||
}
|
||||
return result
|
||||
|
||||
# simple data value return
|
||||
def get_property_value(self, type = None):
|
||||
result = []
|
||||
print(f"Component type: {type}")
|
||||
for name, value in self._properties.items():
|
||||
print(f"Component Property: {name}")
|
||||
if type in name:
|
||||
result.append(value)
|
||||
if len(result) == 1:
|
||||
return result[0]
|
||||
else:
|
||||
return result
|
||||
|
||||
# full data return
|
||||
def get_description(self):
|
||||
these_properties = []
|
||||
for name, value in self._properties.items():
|
||||
these_properties.append({"Property": name, "Value": value})
|
||||
these_metrics = []
|
||||
for name, value in self._metrics.items():
|
||||
these_metrics.append({"Metric": name, "Data": value})
|
||||
result = {
|
||||
"Source": self.name,
|
||||
"Type": self.type,
|
||||
"Properties": these_properties,
|
||||
"Metrics": these_metrics
|
||||
}
|
||||
return result
|
||||
|
||||
# complex data type return
|
||||
def get_metrics(self, type = None):
|
||||
these_metrics = []
|
||||
if type == None:
|
||||
for name, value in self._metrics:
|
||||
these_metrics.append({"Metric": name, "Data": value})
|
||||
else:
|
||||
for name, value in self._metrics:
|
||||
if name == type:
|
||||
these_metrics.append({"Metric": name, "Data": value})
|
||||
result = {
|
||||
"Source": self.name,
|
||||
"Component Type": self.type,
|
||||
"Metrics": these_metrics
|
||||
}
|
||||
return result
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user