check_vllm: fix

This commit is contained in:
Cyberes 2023-09-20 15:24:44 -06:00
parent c1cc8297c3
commit 45087f3299
1 changed files with 33 additions and 26 deletions

View File

@ -45,7 +45,15 @@ def main(critical, warning, timeout, target_url, does_not_contain, verify):
} }
} }
if response.status_code != 200: if response.status_code != 200:
text_result = f"failed with status code {response.status_code}.\n{response.text}" text_result = f"failed with status code {response.status_code}\n{response.text}"
exit_code = nagios.STATE_CRIT
else:
if not json_data.get('text'):
text_result = f"did not receive valid JSON\n{response.text}"
exit_code = nagios.STATE_CRIT
else:
if not len(json_data['text']):
text_result = f"did not receive valid JSON\n{response.text}"
exit_code = nagios.STATE_CRIT exit_code = nagios.STATE_CRIT
else: else:
tokenizer = tiktoken.get_encoding("cl100k_base") tokenizer = tiktoken.get_encoding("cl100k_base")
@ -56,7 +64,6 @@ def main(critical, warning, timeout, target_url, does_not_contain, verify):
'min': 0, 'min': 0,
} }
}) })
if not len(json_data['text'][0]): if not len(json_data['text'][0]):
text_result = f"response was empty.\n{response.text}" text_result = f"response was empty.\n{response.text}"
exit_code = nagios.STATE_CRIT exit_code = nagios.STATE_CRIT
@ -87,12 +94,12 @@ if __name__ == "__main__":
parser.add_argument('-w', '--warning', type=float, default=30, help='Warning threshold for response time in seconds (default: 30)') parser.add_argument('-w', '--warning', type=float, default=30, help='Warning threshold for response time in seconds (default: 30)')
parser.add_argument('-t', '--target-url', type=str, required=True, help='Your completion API endpoint') parser.add_argument('-t', '--target-url', type=str, required=True, help='Your completion API endpoint')
parser.add_argument('-m', '--timeout', type=float, default=300, help='Request timeout in seconds (default: 300)') parser.add_argument('-m', '--timeout', type=float, default=300, help='Request timeout in seconds (default: 300)')
parser.add_argument('-v', '--verify', action='store_false', help='Do not verify SSL') parser.add_argument('-v', '--no-verify', action='store_false', help='Do not verify SSL')
parser.add_argument('-n', '--does-not-contain', type=str, help='Response must not contain') parser.add_argument('-n', '--does-not-contain', type=str, help='Response must not contain this string')
args = parser.parse_args() args = parser.parse_args()
try: try:
main(args.critical, args.warning, args.timeout, args.target_url, args.does_not_contain, args.verify) main(args.critical, args.warning, args.timeout, args.target_url, args.does_not_contain, args.no_verify)
except Exception as e: except Exception as e:
print(f'UNKNOWN: exception "{e}"') print(f'UNKNOWN: exception "{e}"')
print(traceback.format_exc()) print(traceback.format_exc())