Open mehmood-007 opened 8 years ago
@mehmood-007 you may be better off posting to https://groups.google.com/forum/#!forum/skyline-dev with any queries as this skyline is an Archived Project.
If you do post, add as many details about your setup as you can, it generally makes things quicker to diagnosis.
Thanks for your response and apologies for the delay
following is the setting.py and how i'm starting skyline analyzer . but some times it crashes automatically and no logs in /var/log/analyzer.log
root@skyline:/opt/skyline/bin# ./analyzer.d start started analyzer-agent
settings.py """ Shared settings """
REDIS_SOCKET_PATH = '/tmp/redis.sock'
LOG_PATH = '/var/log/skyline'
PID_PATH = '/var/run/skyline'
FULL_NAMESPACE = 'metrics.'
MINI_NAMESPACE = 'mini.'
FULL_DURATION = 86400
MINI_DURATION = 3600
GRAPHITE_HOST = 'a.v.y.x'
GRAPH_URL = 'http://' + GRAPHITE_HOST + '/render/?width=1400&target=%s'
CARBON_PORT = 2013
OCULUS_HOST = 'http://x.x.y.y:3000'
""" Analyzer settings """
ANOMALY_DUMP = 'webapp/static/dump/anomalies.json'
ANALYZER_PROCESSES = 15
STALE_PERIOD = 500
MIN_TOLERABLE_LENGTH = 1
MAX_TOLERABLE_BOREDOM = 100
BOREDOM_SET_SIZE = 1
CANARY_METRIC = 'statsd.numStats'
ALGORITHMS = [ 'first_hour_average', 'mean_subtraction_cumulation', 'stddev_from_average', 'stddev_from_moving_average', 'least_squares', 'grubbs', 'histogram_bins', 'median_absolute_deviation', 'ks_test', ]
CONSENSUS = 6
ENABLE_SECOND_ORDER = False
ENABLE_ALERTS = True
ALERTS = ( ("skyline", "smtp", 600) )
SMTP_OPTS = {
"server": "",
#The SMTP port to use on the above server
"port": "465",
#This specifies the sender of email alerts.
"sender": "alerts.skyline@kale.com",
#recipients is a dictionary mapping metric names
#(exactly matching those listed in ALERTS) to an array of e-mail addresses
"recipients": {
"skyline": ["test@gmail.com"],
},
} """ Horizon settings """
WORKER_PROCESSES = 20
HORIZON_IP = '0.0.0.0'
PICKLE_PORT = 2024
UDP_PORT = 2025
CHUNK_SIZE = 7000
MAX_QUEUE_SIZE = 500
ROOMBA_PROCESSES = 1
ROOMBA_GRACE_TIME = 600
MAX_RESOLUTION = 1000
SKIP_LIST = [ 'skyline.horizon.queue_size', 'skyline.analyzer.run_time', 'skyline.analyzer.total_analyzed'
#'_90',
#'.lower',
#'.upper',
#'.median',
#'.count_ps',
#'.sum',
]
""" Webapp settings """
WEBAPP_IP = '0.0.0.0'
WEBAPP_PORT = 80
@mehmood-007 OK - you did not read the https://groups.google.com/forum/#!forum/skyline-dev :)
First two things that really stand out there that may be problem are your ANALYZER_PROCESSES = 15
and WORKER_PROCESSES = 20
- these could be your issue unless your have a 25 core CPU server or you are consuming 10s of 1000s metrics.
Try setting those to lower values similar to the number of CPUs you have, .e.g:
ANALYZER_PROCESSES = 2
WORKER_PROCESSES = 2
Hopefully you will find that stops the crashing.
@earthgecko Thanks for your help.
I have configured this ( ANALYZER_PROCESSES=2 , WORKER_PROCESSES=2) and currently i'm relaying 2000s metrics/min and I am currently analyzing the stability of the code for the mentioned parameters. Similarly in future I have to pass 25000s metrics/min. Will it be capable to analyze it ?
@mehmood-007 Do not take this a firm benchmark, however it is definitely possible to push 40000 metrics per minute with 4 CPUs and 4GB RAM on a SSD backed server - running with the following settings:
FULL_DURATION = 86400
ANALYZER_PROCESSES = 3
WORKER_PROCESSES = 2
This allows overhead for redis.
@earthgecko Thanks i'll implement this and can you please inform me on how many metrics are you passing to skyline
Skyline is crashing every time it reaches 2k Metrics. Analyzer.log stops recording any metrics. While horizon logs are working fine. Please advise on how can i fix these issues and are there any alternatives available in the market that I can look into.