Try creating a simple bash script and then make the check run your bash
script

check program my_program with path "/usr/local/bin/python_check.sh" ....

That way you can make sure that it's not the monit check creating issues.

----
#!/bin/bash
/usr/bin/python -u user my_program.py > /var/log/mylogs 2>&1
----

You can then execute the bash script to verify your logs are getting
written.

On Mon, Feb 8, 2016 at 4:10 PM, Vikram Kone <[email protected]> wrote:

> yes, it works when I run the python command directly from shell.
> but when I do
>
> $> monit start my_program
>
> I don't see the log file being created
>
> On Mon, Feb 8, 2016 at 12:22 PM, Russell Simpkins <
> [email protected]> wrote:
>
>> I created test.py
>>
>> raise ValueError("throwing up")
>>
>> I ran it by running
>>
>> $> python test.py > /dev/null 2>&1
>> $> echo $?
>> 1
>>
>> Not sure what else you might be doing wrong
>>
>>
>> On Mon, Feb 8, 2016 at 3:13 PM, Vikram Kone <[email protected]> wrote:
>>
>>> For testing it I simply did this in the python script
>>>
>>> #my_program.py
>>> #!/usr/bin/python
>>>
>>> raise ValueError("throwing up")
>>>
>>>
>>> On Mon, Feb 8, 2016 at 10:39 AM, Russell Simpkins <
>>> [email protected]> wrote:
>>>
>>>> Virkam,
>>>>
>>>> You don't show your python. Are you using "exit(1)" in your python when
>>>> there is an error condition?
>>>> You need to exit(1) or something other than zero.
>>>>
>>>> Russ
>>>>
>>>> On Mon, Feb 8, 2016 at 1:06 PM, Vikram Kone <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi,
>>>>> I have a python script that I use as to check certain system
>>>>> conditions to alert on using monit.
>>>>> This script prints a buch of stuff during execution to stdout which I
>>>>> want to capture in a log file.
>>>>> How should I configure the monit conf script, such that I can capture
>>>>> both the stdout and stderr of this script and at the same time alerting on
>>>>> the exit status of the script. The monit alert should also included the
>>>>> stdout/stderr for the alert events.
>>>>>
>>>>> This is what I tried
>>>>>
>>>>> #/etc/monit/conf/myprogram.conf
>>>>>
>>>>> check program my_program with path "/usr/bin/python -u
>>>>> /opt/program/my_program.py > my_prgoram.log 2&>1"
>>>>>  if status !=0 alert
>>>>>
>>>>> But I see that the monit always thinks that the program is reporting
>>>>> status=0 even when then it exists with error code 1.
>>>>>
>>>>> What am i doing wrong?
>>>>>
>>>>> --
>>>>> To unsubscribe:
>>>>> https://lists.nongnu.org/mailman/listinfo/monit-general
>>>>>
>>>>
>>>>
>>>> --
>>>> To unsubscribe:
>>>> https://lists.nongnu.org/mailman/listinfo/monit-general
>>>>
>>>
>>>
>>> --
>>> To unsubscribe:
>>> https://lists.nongnu.org/mailman/listinfo/monit-general
>>>
>>
>>
>> --
>> To unsubscribe:
>> https://lists.nongnu.org/mailman/listinfo/monit-general
>>
>
>
> --
> To unsubscribe:
> https://lists.nongnu.org/mailman/listinfo/monit-general
>
--
To unsubscribe:
https://lists.nongnu.org/mailman/listinfo/monit-general

Reply via email to