Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Sep 18 2017 22:37

    shoekstra on use_nginx

    (compare)

  • Sep 18 2017 22:37

    tas50 on master

    Depend on nginx instead of chef… Use nginx >= 7.0 Merge pull request #552 from so… (compare)

  • Sep 18 2017 22:37
    tas50 closed #552
  • Sep 18 2017 22:14
    shoekstra synchronize #552
  • Sep 18 2017 22:14

    shoekstra on use_nginx

    Use nginx >= 7.0 (compare)

  • Sep 18 2017 22:12
    shoekstra commented #551
  • Sep 18 2017 22:11
    shoekstra commented #552
  • Sep 18 2017 22:11
    shoekstra commented #552
  • Sep 18 2017 22:09
    shoekstra closed #546
  • Sep 18 2017 22:09
    shoekstra commented #546
  • Sep 18 2017 22:06
    shoekstra synchronize #552
  • Sep 18 2017 22:06

    shoekstra on use_nginx

    Depend on nginx instead of chef… (compare)

  • Sep 18 2017 22:03
    shoekstra review_requested #551
  • Sep 18 2017 22:01
    shoekstra synchronize #551
  • Sep 18 2017 22:01

    shoekstra on release_8.0.0

    Release 8.0.0 (compare)

  • Sep 18 2017 22:00
    shoekstra review_requested #552
  • Sep 18 2017 22:00
    shoekstra review_requested #552
  • Sep 18 2017 22:00
    shoekstra opened #552
  • Sep 18 2017 21:59

    shoekstra on use_nginx

    Depend on nginx instead of chef… (compare)

  • Sep 18 2017 21:57
    shoekstra review_requested #551
Sander Botman
@sbotman
well.... it seems that it is trying to push the option on the command...
but commands don't hold custom options.. only services do as far as I understand..
but I think I can solve this...
did you found were the option was set?
would like to reproduce the problem within my test-kitchen..
bphinney
@bphinney
No
I don't see where that specific data is set other than when I am running the breakout test.
Sander Botman
@sbotman
Hmmm...
edit your nagios hosts
Euuuhh
graphite hosts
do you have a attribute node['nagios']['_graphite_prefix'] on them?
that's the only place I can think of since you have scanned all the databags...
bphinney
@bphinney
the role had a ['nagios']['graphite_prefix'] attribute set.
The actual node only had a ['graphite']['listen_port'] attribute
Sander Botman
@sbotman
oke..
bphinney
@bphinney
I don't see any _graphite_prefix attribute. Might be getting set by a recipe.
Is my thought.
Sander Botman
@sbotman
possible...
knife node edit NODE -a
then you see all attributes..
and I was saying it wrong, custom attributes can live on hosts, contacts and services if I read: https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/3/en/customobjectvars.html
this is what I tried to implement...
but I still don't understand why in your case it gives the error: undefined method `push' for #<Nagios::Command:0x000000106bc870>
Sander Botman
@sbotman
can you check one more thing for me....
once you are in the debug console, type: puts self.class
bphinney
@bphinney
Nagios::Command
Sander Botman
@sbotman
right..

so if we change this:

def update_hash_options(hash)
  hash.each do |k, v|
    push(Nagios::CustomOption.new(k.upcase, v)) if k.start_with?('_')
    m = k + '='
    send(m, v) if self.respond_to?(m)
  end
end

into this:

def update_hash_options(hash)
  hash.each do |k, v|
    if self.is_a?(Nagios::Service) || self.is_a?(Nagios::Contact) || self.is_a?(Nagios::Host)
      push(Nagios::CustomOption.new(k.upcase, v)) if k.start_with?('_')
    end
    m = k + '='
    send(m, v) if self.respond_to?(m)
  end
end
Sander Botman
@sbotman
this should remove your problem...
just don't know if it's the right solution...
bphinney
@bphinney
No, I just found the culprit
{
2 "id": "mem",
3 "hostgroup_name": "linux",
4 "command_line": "/usr/lib64/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c check_mem -t 20",
5 "_graphiteprefix": "qa.metrics.mem"
6 }
I want to thank you for all the help, it was really above and beyond.
Sander Botman
@sbotman
Well your welcome... I will make sure that this will not break within the new version.....
bphinney
@bphinney
That was totally my bad, your stuff had nothing to do with it.
It was a customized option to try to enable data profiling and we probably shouldn't have tried to customize to that extent without documenting what we were doing.
Sander Botman
@sbotman
well you helpt me... These settings should not break the cookbook and I know a way how to fix it....
bphinney
@bphinney
Thanks again, really helped me out.
Sander Botman
@sbotman
:thumbsup:
created schubergphilis/nagios#459 for this..
Ken Schmidt
@Maigard
for #459 , you could do something like
def update_hash_options(hash)
  hash.each do |k, v|
    push(Nagios::CustomOption.new(k.upcase, v)) if k.start_with?('_') && self.respond_to?('push')
    m = k + '='
    send(m, v) if self.respond_to?(m)
  end
end
It would only add custom options for objects that accept them, and doesn't break on objects that don't have a push method.
bphinney
@bphinney
the cookbook is producing a hostgroups.cfg definition of . rather than . Anyone know what causes this?
Nevermind, I found it.
Ilja Krauchanka
@ikrauchanka
/code

pardon

define contact {
        contact_name                    bi-pagerduty
        alias                           BI PagerDuty Pseudo-Contact
        service_notification_period     24x7
        host_notification_period        24x7
        service_notification_options    u,c,r
        host_notification_options       d,r
        service_notification_commands   notify-service-by-pagerduty
        host_notification_commands      notify-host-by-pagerduty
        pager                           jew0efj0ejf01j0enjkqnjwnqdk
        }

How we can define contact without email?

Deepak Kosaraju
@kkdk5535
email is not mandatory object for contact definition as per nagios doc - https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/3/en/objectdefinitions.html#contact, so I think @sbotman would have made library accordingly
I am still understanding custom resource and defintions in this cookbook - I may be wrong about how it is instrumented in the cookbook
Sander Botman
@sbotman
Well, nagios doesn't start if contacts don't have any email, so that's why I skip them.
Will need to look at the doc's again to understand this better.. will see if I have some time for this tomorrow.