summaryrefslogtreecommitdiff
path: root/ceilometer/cmd
Commit message (Collapse)AuthorAgeFilesLines
* Fix instantiation of manager.AgentManager on cmd.polling.create_polling_serviceRafael Weingärtner2019-11-141-2/+1
| | | | | | | | | | The commit 28f0a70da99b2fde2479ce6a5c62128ab75554af broke the selection of polling namespaces. When creating the agent manager we should define the polling group that we want to use. Otherwise, Ceilometer will for instance enable the "central" polling methods in the compute nodes, and vice versa. Change-Id: I179c95a7bfaf5d9722037618108fc882d85fda5a Signed-off-by: Rafael Weingärtner <rafael@apache.org>
* Create dynamic pollster featureRafael Weingärtner2019-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The dynamic pollster feature allows system administrators to create/update pollsters on the fly (without changing code). The system reads YAML configures that are found in ``pollsters_definitions_dirs``, which has the default at ``/etc/ceilometer/pollsters.d``. Each YAML file in the dynamic pollster feature can use the following attributes to define a dynamic pollster: * ``name`` -- mandatory field. It specifies the name/key of the dynamic pollster. For instance, a pollster for magnum can use the name ``dynamic.magnum.cluster``; * ``sample_type``: mandatory field; it defines the sample type. It must be one of the values: ``gauge``, ``delta``, ``cumulative``; * ``unit``: mandatory field; defines the unit of the metric that is being collected. For magnum, for instance, one can use ``cluster`` as the unit or some other meaningful String value; * ``value_attribute``: mandatory attribute; defines the attribute in the JSON response from the URL of the component being polled. In our magnum example, we can use ``status`` as the value attribute; * ``endpoint_type``: mandatory field; defines the endpoint type that is used to discover the base URL of the component to be monitored; for magnum, one can use ``container-infra``. Other values are accepted such as ``volume`` for cinder endpoints, ``object-store`` for swift, and so on; * ``url_path``: mandatory attribute. It defines the path of the request that we execute on the endpoint to gather data. For example, to gather data from magnum, one can use ``v1/clusters/detail``; * ``metadata_fields``: optional field. It is a list of all fields that the response of the request executed with ``url_path`` that we want to retrieve. As an example, for magnum, one can use the following values: ``` metadata_fields: - "labels" - "updated_at" - "keypair" - "master_flavor_id" - "api_address" - "master_addresses" - "node_count" - "docker_volume_size" - "master_count" - "node_addresses" - "status_reason" - "coe_version" - "cluster_template_id" - "name" - "stack_id" - "created_at" - "discovery_url" - "container_version" ``` * ``skip_sample_values``: optional field. It defines the values that might come in the ``value_attribute`` that we want to ignore. For magnun, one could for instance, ignore some of the status it has for clusters. Therefore, data is not gathered for clusters in the defined status. ``` skip_sample_values: - "CREATE_FAILED" - "DELETE_FAILED" ``` * ``value_mapping``: optional attribute. It defines a mapping for the values that the dynamic pollster is handling. This is the actual value that is sent to Gnocchi or other backends. If there is no mapping specified, we will use the raw value that is obtained with the use of ``value_attribute``. An example for magnum, one can use: ``` value_mapping: CREATE_IN_PROGRESS: "0" CREATE_FAILED: "1" CREATE_COMPLETE: "2" UPDATE_IN_PROGRESS: "3" UPDATE_FAILED: "4" UPDATE_COMPLETE: "5" DELETE_IN_PROGRESS: "6" DELETE_FAILED: "7" DELETE_COMPLETE: "8" RESUME_COMPLETE: "9" RESUME_FAILED: "10" RESTORE_COMPLETE: "11" ROLLBACK_IN_PROGRESS: "12" ROLLBACK_FAILED: "13" ROLLBACK_COMPLETE: "14" SNAPSHOT_COMPLETE: "15" CHECK_COMPLETE: "16" ADOPT_COMPLETE: "17" ``` * ``default_value_mapping``: optional parameter. The default value for the value mapping in case the variable value receives data that is not mapped to something in the ``value_mapping`` configuration. This attribute is only used when ``value_mapping`` is defined. Moreover, it has a default of ``-1``. Change-Id: I5f0614518a9e304b86b74aa5bb0f9667d2a3a787 Signed-off-by: Rafael Weingärtner <rafael@apache.org>
* Windows: avoid passing conf objects to subprocessesDaniel Vincze2019-05-221-9/+23
| | | | | | | | | | | | | On Windows, cotyledon uses multiprocessing instead of forking. Meanwhile, config objects as well as service manager objects aren't pickleable. For this reason, we'll avoid passing unpickleable objects to subprocesses, making all the required initialization on the subprocess side. This change will allow ceilometer-polling to run on Windows. Change-Id: Id51db8f06f295bb7019915b53e560df52456cbda Closes-Bug: #1625602
* Add framework for ceilometer-status upgrade checkakhiljain232019-05-161-0/+53
| | | | | | | | | | | This commit adds the functionality of ceilometer-status CLI for performing upgrade checks as part of the Stein cycle upgrade-checkers goal. It only includes a sample check which must be replaced by real checks in future. Change-Id: I6e76b74b2f02251ee39025e02de44b13568ebed2 Story: 2003657 Task: 27732
* Switch to oslo privsepzhurong2019-04-281-0/+5
| | | | | | | Please reference here: https://docs.openstack.org/oslo.privsep/latest/user/index.html#converting-from-rootwrap-to-privsep Change-Id: I5db0e64ec38d912f907b4ad483562120d030d726
* Remove restiction on allowable namespaces in polling.Sam Morrison2018-05-011-1/+0
| | | | | Change-Id: Icc972d0880283d46ff97203c67816e1aa103d504 Closes-Bug: #1767939
* remove agent setup_* helper functionsgord chung2017-11-161-3/+1
| | | | | | | | - they are only used essentially for testing. - cleanup stray pipeline references in polling tests - remove random mocks that aren't mocking anything for a reason Change-Id: I5881c0926dde2247c4606fed26e60bc5e197cf48
* move sample/event specifc pipeline models to own modulegord chung2017-11-161-2/+2
| | | | | | | | - move sample/event specifc pipeline models to own module - make grouping key computation part of pipeline - remove pipeline mocks from polling tests Change-Id: I20349e48751090210f8a0074c4a735f1b7e74bc1
* separate base manager from pipelinegord chung2017-11-161-1/+1
| | | | | | common agent for all Change-Id: I19a83d3d0e5c91ab5cb6e792ab7389e36f8ede55
* Remove deprecated storage driversJulien Danjou2017-10-261-113/+0
| | | | Change-Id: I6b262dd440a72f25662b64d938ab9e5328709a97
* Remove Ceilometer APIJulien Danjou2017-10-251-34/+0
| | | | | | This removes the deprecated Ceilometer API. Change-Id: I752b36b3dfe8f935b68c4d3d59ccb5b8b60c582f
* Merge "Remove deprecated pollster-list option"Zuul2017-10-201-9/+1
|\
| * Remove deprecated pollster-list optionJulien Danjou2017-10-041-9/+1
| | | | | | | | | | Closes-Bug: #1700639 Change-Id: I4d3a404877254748d8c60e80e28a9cdc6a0ecbfc
* | kill collectorgord chung2017-10-161-30/+0
|/ | | | Change-Id: I7720d20eab345a7835d57fac573332eca0e7d11e
* Retry to upgrade Gnocchi if connection failsJulien Danjou2017-09-061-1/+19
| | | | | | | | | | If Gnocchi is not available at the time ceilometer-upgrade is called, it return right away with an error. This patch makes it more solid by retrying to connect to Gnocchi until it succeeds. Change-Id: If77138e8402ba97c5c36b03cb3ded61f7ab92524
* deprecated pollster-listgord chung2017-07-281-1/+3
| | | | | | | we should only do this via polling.yaml (or pipeline.yaml for pre-Pike builds) Change-Id: I6cb28913afc18b2a5d2a0c0612fad399ffa5a3b2
* Remove log translationsxuqiankun2017-04-152-19/+17
| | | | | | | | | | | | Log messages are no longer being translated. This removes all use of the _LE, _LI, and _LW translation markers to simplify logging and to avoid confusion with new contributions. See: http://lists.openstack.org/pipermail/openstack-i18n/2016-November/002574.html http://lists.openstack.org/pipermail/openstack-dev/2017-March/113365.html Change-Id: I836a018f971fb71bfa35e76f00433a263440de18
* Don't run ceilometer-upgrade on unconfigured dbMehdi Abaakouk2017-03-041-2/+9
| | | | | | | | | | | | When the database backend is unconfigured, we currently try to connection to nothing, and due to the retry logic around the database connection, the user experience is "ceilometer-upgrade is stuck". This change keeps the database upgrade is the database is not configured. And don't use the connection retry logic for upgrade. Change-Id: I3fa2a332ecac6cb52c145f437f79b2aba43a4757
* Remove events storage and APIJulien Danjou2017-01-061-85/+71
| | | | | | This now has been moved to Panko. Change-Id: I179eb0d436752e3bb8abaed714664cf74f5615e6
* Print ceilometer configuration on startupMehdi Abaakouk2016-11-244-1/+18
| | | | | | | This change prints the ceilometer configuration on startup. It uses the cotyledon helper for this. Change-Id: I727718220bb8da0fbe3eecb26623f2ab1ca35a42
* register ceilometer options at runtimeMehdi Abaakouk2016-11-244-11/+31
| | | | | | | | | | | | | | | This remove pollsters option from configfile sample due to a duplicate option registration. This will be fixed later. The exchange_control group in the config sample doesn't exit in reality exchange are in DEFAULT group. This removes usage of cfg.CONF everywhere left. This adds all missing OPTS in sample file. Change-Id: I48c11ee7e1aae65847958b98532b3bdb48a3ceb5
* cmd.storage: stop using global confMehdi Abaakouk2016-11-241-22/+26
| | | | Change-Id: I50431af7b517b63864f3ca67ec05794b912081c0
* Trivial fix: fix a wrong config option type usageliusheng2016-11-101-1/+1
| | | | Change-Id: I27ac70594ae9c24421fa379e71ac1e647ce685b1
* Remove deprecated ceilometer-dbsyncJulien Danjou2016-10-211-9/+3
| | | | Change-Id: Ib7875909cc6b997fb25003cbd48eb1434b20fd35
* pipeline: stop using global confMehdi Abaakouk2016-10-131-12/+12
| | | | Change-Id: Ieedc84ebe87dfb45941332db25e1fbb0739da455
* pipeline services: stop using global confMehdi Abaakouk2016-10-132-11/+9
| | | | Change-Id: Ic33ae353215b5ef66bdab2fdef6bce8abd5e9921
* collector: stop using global configMehdi Abaakouk2016-10-111-5/+3
| | | | Change-Id: I36a7008e314a7e66b1d66228514d7ac2e57b5252
* Remove left over from old ceilometer-api binaryJulien Danjou2016-09-181-23/+0
| | | | | Closes-Bug: #1624873 Change-Id: I40040ce96a76c76887e0139cf045b73010a6820c
* Merge "Don't require gnocchiclient"Jenkins2016-09-141-1/+1
|\
| * Don't require gnocchiclientMehdi Abaakouk2016-09-141-1/+1
| | | | | | | | | | Closes-Bug: 1621384 Change-Id: I0480f2dd5e022c1abe210325eb86b5e51582c18d
* | Add oslo.config cli opt to skip the confirm checkxiaozhuangqing2016-09-131-6/+12
|/ | | | | | | | Avoid confirm prompt to DROP tables everytimes, add a oslo.config cli opt to skip the check. also see: https://review.openstack.org/#/c/356552/ Change-Id: Ib204dcf5fea408deb46fa689401eb0ac6c9d3e15
* gnocchi: Create resource-types on upgradesMehdi Abaakouk2016-09-061-2/+12
| | | | Change-Id: Ibc7ce7daf598a5d5702655d50e116cefcc8267bc
* Allow to skip metering/event database upgradeMehdi Abaakouk2016-09-061-2/+20
| | | | Change-Id: Ib14e0324a02e78e7814d459f3e47d23e840db548
* Rename ceilometer-dbsync in ceilometer-upgradeMehdi Abaakouk2016-09-051-2/+8
| | | | Change-Id: I9adcc6c2180bae1d0e17a7d03fe2df9fca096487
* move out oslo.serviceMehdi Abaakouk2016-07-133-9/+20
| | | | | | This change replaces oslo.service by cotyledon. Change-Id: I6eea5fcd26ade07fbcb5718b4285b7fa039a3b08
* Replace raw_input with input to make PY3 compatibleyuyafei2016-07-041-3/+4
| | | | | | | | | The raw_input() raises NameError: name 'raw_input' is not defined in python3. This patch fixes it by replacing raw_input with input to make PY3 compatible. Change-Id: I34d7608215c72d105b31293bfc6d779df47d7631 Closes-Bug: #1595827
* Add a tool to clean the legacy alarm tablesliusheng2016-06-291-2/+72
| | | | | | | | | | | Since we have moved alarm out of ceilometer, when run ceilometer-dbsync, the alarm tables will still be created and won't be removed. This change added a tool that allow users to drop the legacy alarm and alarm_history tables with SQL backends. Change-Id: Ia831741319fd8e198f54a7d4a99b4d7833074e8e Closes-Bug: #1578128 Signed-off-by: liusheng <liusheng@huawei.com>
* Replace logging with oslo_logliusheng2016-04-251-3/+2
| | | | | | | If we use logging lib to initialize a logger, the logger won't be applied the oslo_log config options. Change-Id: Ib6bc686f4296cc335aa5abcc47f266a237d8688c
* publisher: clean out context usageJulien Danjou2016-04-011-2/+1
| | | | | | | It turns out the context object is never used by anybody, and is anyway empty. So let's remove its usage completely. Change-Id: I4efeb629dfd84e7cddeb0df908207cf017fc741c
* Merge "Add validation for polling_namespaces option"Jenkins2016-03-081-6/+13
|\
| * Add validation for polling_namespaces optionZhiQiang Fan2016-03-071-6/+13
| | | | | | | | | | | | | | | | | | | | We find that if polling_namespaces is specified by config file instead of in command line args, the validation doesn't work at all, which cause the agent still running but in a wrong state. This patch fixes it. Change-Id: I34a268da18549961eb1a3ccd862def5145725cd5 Closes-Bug: #1553013
* | remove wrong "#!/usr/bin/env python" headerQiaowei Ren2016-03-071-1/+0
|/ | | | | | | | There are some general python code files which have the "#!/usr/bin/env python" header. This patches remove it. Closes-Bug: 1548852 Change-Id: I229ba9747ec9a84b7a91c7fdb3e82fbcba65e92b
* Remove eventlet usageJulien Danjou2015-11-246-22/+0
| | | | | | | | This removes entirely our usage of eventlet and its ugly monkey-patching in favor of a threaded approach. Implements: remove-eventlet Change-Id: Ib5f623e2d1ff9e9254601ad091bf5b53ab32000d
* Remove alarming codeJulien Danjou2015-11-242-43/+0
| | | | | | | | | Since we moved all the alarming code and subsystem to the Aodh project, remove it from Ceilometer. Depends-On: I3983128d2d964b0f1f3326948b27f5d94df65a04 Depends-On: I99c9f2be0bbc70f289da5c2ba22698b8b7dc4495 Change-Id: Id169a914c1d1f2f5ad03ebb515d3d052204d5c5c
* polling: remove deprecated agentsJulien Danjou2015-09-071-18/+1
| | | | | | | | We have deprecated the agents for a while now in favor of the ceilometer-polling tool, let's update the doc for good and remove them. Depends-On: I4a2a982d4153a31971a5f1a1b504b96ce29236f9 Change-Id: I7447ba4f408c95b0acf1b809504ce16fff1c6e21
* Merge "Change and move the workers options to corresponding service section"Jenkins2015-08-192-2/+2
|\
| * Change and move the workers options to corresponding service sectionliu-sheng2015-08-122-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the workers options of collector, api and notification services are all located in [DEFAULT] section. This change unify the options name and move them to corresponding service configure section. Additionally, this change will remove the "workers set by cpu number" functionality, because it has no effect if the workers options has default value. Closes-Bug: #1481254 Change-Id: Idde86762ab6520d3adcbdd2b86d0f4de3a8517cd
* | do not translate debug logsgordon chung2015-08-121-3/+3
|/ | | | | | | | | According to the OpenStack translation policy, available at https://wiki.openstack.org/wiki/LoggingStandards, debug messages should not be translated. Change-Id: Icdf5ea14767d98d2dd4f32bd5b60130a8bca540a Closes-Bug: #1317856
* Merge "Remove unnecessary wrapping of transformer ExtentionManager"Jenkins2015-06-241-5/+2
|\
| * Remove unnecessary wrapping of transformer ExtentionManagerLiuSheng2015-06-221-5/+2
| | | | | | | | | | | | | | | | | | Currently, the TransformerExtensionManager is used to wrap the ExtentionManager of stevedore.extension just to provide getting extension by name functionality, this is naturally supported by stevedore. This change remove the unnecessary code. Change-Id: I0b7bfa40e4131236b4adedc8b4bdcd70c14d5680