summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Reporting
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Use older nested try syntax for finally for python 2.4 compatMichael Fenn2014-09-101-4/+5
| | |
| * | Version bump to 1.3.5v1.3.5Sol Jerome2014-09-051-1/+1
| | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | Reporting: Remove duplicate methodSol Jerome2014-08-141-3/+0
| | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | Reporting: Fix prune items import and displaySol Jerome2014-07-152-2/+2
| |/ | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Reporting/Collector: fix semaphore initializationAlexander Sulfrian2014-11-111-1/+2
| |
* | testsuite: Added unit tests for new option parsingChris St. Pierre2014-11-101-1/+2
| |
* | Reporting/Collector: fix python2.4 compatibilityAlexander Sulfrian2014-10-271-9/+11
| |
* | Reporting/Collector: add max-children argumentAlexander Sulfrian2014-10-271-3/+19
| | | | | | | | | | | | Add option to limit the count of child threads to import the transactions. If the number is exceeded the next import will block until one thread is ready.
* | Reporting: do not duplicate isstale functionalityAlexander Sulfrian2014-08-012-15/+2
| | | | | | | | | | | | | | | | | | | | | | The interaction entries have a isstale() method, we do not need a template tag, that tries to figure out this on its own. The isstale() method works even better: It knows, if the interaction is the current interaction and compares the timestamp to the current time or (if it is not the current one) it compares the timestamp to the timestamp of the next interaction. So using the method of the model, you can browse the interaction history and see, if the host was stale some time in the past. Previously all interactions more than 24h ago were marked stale.
* | Merge branch 'more-highlights-in-gridview' of ↵Sol Jerome2014-06-191-0/+4
|\ \ | | | | | | | | | https://github.com/AlexanderS/bcfg2
| * | Reports/templatetags: mark special hosts in grid viewAlexander Sulfrian2014-06-181-0/+4
| | | | | | | | | | | | | | | Highligh additional special hosts in the grid view. Stale hosts get a grey background and clean hosts with extra packages get a blue background.
* | | Merge branch 'reports-add-stale-col' of https://github.com/AlexanderS/bcfg2Sol Jerome2014-06-181-0/+2
|\ \ \
| * | | Reporting: add column staleAlexander Sulfrian2014-06-181-0/+2
| |/ / | | | | | | | | | | | | | | | Add a new column "stale", that displays if a host is stale or not. It could be determined by parsing the date column, but it would be more convenient to have a separate column for that.
* / / Version bump to 1.4.0pre1v1.4.0pre1Sol Jerome2014-06-161-1/+1
|/ / | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | DjangoORM: Add missing importSol Jerome2014-04-251-0/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Merge branch 'maint'Chris St. Pierre2014-04-251-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: misc/bcfg2.spec src/lib/Bcfg2/Client/Client.py src/lib/Bcfg2/Client/Tools/APK.py src/lib/Bcfg2/Client/Tools/MacPorts.py src/lib/Bcfg2/Client/Tools/Pacman.py src/lib/Bcfg2/Client/Tools/YUM.py src/lib/Bcfg2/Server/Admin/Minestruct.py src/lib/Bcfg2/Server/Admin/Pull.py src/lib/Bcfg2/Server/Admin/Viz.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py src/lib/Bcfg2/Server/Plugins/Cfg/CfgPrivateKeyCreator.py src/lib/Bcfg2/Server/Plugins/Properties.py src/lib/Bcfg2/settings.py src/sbin/bcfg2-crypt src/sbin/bcfg2-info src/sbin/bcfg2-lint src/sbin/bcfg2-yum-helper testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgEncryptedGenerator.py testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestProperties.py
| * Reporting: Log to debug to prevent spam in logsSol Jerome2014-04-161-2/+2
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Merge branch 'maint' into masterSol Jerome2014-04-163-2/+43
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com> Conflicts: doc/appendix/guides/import-existing-ssh-keys.txt misc/bcfg2.spec src/lib/Bcfg2/Client/Tools/VCS.py src/lib/Bcfg2/Client/Tools/YUM.py src/lib/Bcfg2/Encryption.py src/lib/Bcfg2/Reporting/Collector.py src/lib/Bcfg2/Reporting/Storage/DjangoORM.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/FileMonitor/__init__.py src/lib/Bcfg2/Server/Lint/RequiredAttrs.py src/lib/Bcfg2/Server/Plugin/helpers.py src/lib/Bcfg2/Server/Plugins/Metadata.py src/lib/Bcfg2/Server/Plugins/Packages/Yum.py src/lib/Bcfg2/Server/Plugins/Packages/__init__.py src/lib/Bcfg2/settings.py src/sbin/bcfg2-crypt src/sbin/bcfg2-reports src/sbin/bcfg2-yum-helper testsuite/Testsrc/Testlib/TestClient/TestTools/TestPOSIX/TestAugeas.py
| * bcfg2-report-collector: better error messages when failing to daemonizeChris St. Pierre2014-03-041-0/+13
| |
| * Reporting: properly close db connectionChris St. Pierre2014-02-282-4/+6
| | | | | | | | | | | | | | | | | | Close the db connection at the end of each DjangoORM import, not when the reporting collector shuts down. The collector may not have even opened a connection, in the case of a storage backend other than DjangoORM. Fixes #157
| * Version bump to 1.3.4Sol Jerome2014-02-251-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * ensure that DB connections are always closed at thread/process exitChris St. Pierre2014-02-181-3/+6
| |
| * Reporting: occasionally reap child threadsMichael Fenn2014-01-101-0/+23
| | | | | | | | | | | | | | | | I noticed that, at least on Python 2.4, memory for threads doesn't get freed until the threads are joined. This patch causes the collector to periodically go through and reap those threads. Tested in production for ~1 month, no reported issues.
* | Reporting: update non-ORM bits to know about separate databaseMichael Fenn2014-04-091-4/+6
| | | | | | | | | | | | | | | | | | There is a little bit of code in the reporting web interface that uses raw SQL rather than the django ORM. This bypassed the database router functionality (since there is no model to bind to). Django supports keeping track of multiple connections in the raw SQL interface, so this commit does the refactoring necessary to support the multiple databases.
* | Remove unused importMichael Fenn2014-04-091-1/+1
| |
* | Preliminary support for seperate reporting databaseMichael Fenn2014-03-211-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | This commit implements a Django database router which routes each Django application to a database whose name matches a key in the database dict, falling back to the default database if no matching key is found. This support is plumbed through to the config file via database.reporting_* database connection config options. These options mirror ones available for the default database config. If database.reporting_engine is not specified in the config, then the configuration falls back to the traditional single-database way of doing things with the database router becoming a no-op.
* | Merge branch 'maint'Chris St. Pierre2013-12-093-6/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/appendix/guides/fedora.txt misc/bcfg2.spec schemas/types.xsd src/lib/Bcfg2/Encryption.py src/lib/Bcfg2/Options.py src/lib/Bcfg2/Server/Admin/Client.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/Lint/Validate.py src/lib/Bcfg2/Server/Plugin/helpers.py src/lib/Bcfg2/Server/Plugins/Bundler.py src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py src/lib/Bcfg2/Server/Plugins/Probes.py src/sbin/bcfg2-crypt testsuite/Testsrc/Testlib/TestServer/TestPlugin/Testhelpers.py testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgEncryptedGenerator.py testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestProbes.py testsuite/common.py testsuite/install.sh
| * Reporting: Remove wildcard importsSol Jerome2013-11-163-6/+3
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Merge branch 'maint'Chris St. Pierre2013-11-124-4/+22
|\| | | | | | | | | | | | | | | | | Conflicts: src/lib/Bcfg2/Server/Admin/Reports.py src/lib/Bcfg2/Server/Hostbase/hostbase/urls.py src/lib/Bcfg2/Server/Hostbase/urls.py src/sbin/bcfg2-crypt tools/upgrade/1.3/migrate_dbstats.py
| * Reports: Add missing ImportErrorSol Jerome2013-11-111-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Fix compatibility with Django 1.6.Simon Ruderich2013-11-114-4/+22
| |
* | Merge branch 'maint'Chris St. Pierre2013-11-111-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/lib/Bcfg2/Server/Admin/Compare.py src/lib/Bcfg2/Server/Admin/Snapshots.py src/lib/Bcfg2/Server/MultiprocessingCore.py src/lib/Bcfg2/Server/Plugins/Probes.py src/sbin/bcfg2-crypt src/sbin/bcfg2-reports tools/upgrade/1.3/migrate_configs.py tools/upgrade/1.3/migrate_perms_to_mode.py
| * Version bump to 1.3.3v1.3.3Sol Jerome2013-11-071-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Reporting: fixed error reportingChris St. Pierre2013-10-311-1/+1
| |
* | bcfg2-reports: rewrote with new option parserChris St. Pierre2013-10-302-1/+277
| |
* | DB: fixed how Django settings are loadedChris St. Pierre2013-10-302-14/+5
| |
* | Merge branch 'maint'Chris St. Pierre2013-10-281-9/+29
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: doc/development/lint.txt misc/bcfg2.spec src/lib/Bcfg2/Reporting/Collector.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/Plugins/Metadata.py src/lib/Bcfg2/Server/models.py testsuite/install.sh
| * Revert "Reporting: Simple sanity check to avoid creating too many threads"Michael Fenn2013-10-141-3/+0
| | | | | | | | | | | | | | | | This reverts commit f813f86f8ac2bc7b55f4eb6a0d936f1ce4f68ba7. Premature optimization is the root of all evil, etc. Conflicts: src/lib/Bcfg2/Reporting/Collector.py
| * Reporting: misc improvements to collector threadingMichael Fenn2013-10-101-4/+6
| | | | | | | | | | | | 1. Use a better convention for calling the threading.Thread constructor 2. Add docstring to ReportingStoreThread.run 3. Give the storage thread variable a better name
| * Reporting: Simple sanity check to avoid creating too many threadsMichael Fenn2013-10-091-0/+3
| |
| * Reporting: start a new thread for each importMichael Fenn2013-10-091-10/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When dealing with a high-latency database connection (eg. across a WAN), the bcfg2-report-collector process can fall behind in its import queue. The imports are very much bound by the response latency of the database server and not processing throughput. This patch fires off a new thread for each database interaction. The thread itself simply falls out of scope when the interaction is finished processing. The interaction object is still read from the disk serially in order avoid having to create a locking mechanism for that part of the process. This change does potentially create greater load on the database server, but ultimately the load is limited by rate at which the bcfg2 server can generate work.
* | Merge branch 'maint'Sol Jerome2013-09-011-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com> Conflicts: src/lib/Bcfg2/Client/Tools/__init__.py src/lib/Bcfg2/Server/BuiltinCore.py src/lib/Bcfg2/Server/Plugins/Metadata.py src/lib/Bcfg2/Server/Plugins/NagiosGen.py src/lib/Bcfg2/Server/Plugins/Probes.py src/lib/Bcfg2/Server/SSLServer.py tools/README
| * Reporting: have bcfg2-report-collector be explicit about detachingMichael Fenn2013-08-191-1/+1
| | | | | | | | | | | | | | | | | | Following the same logic as 360ba2e7, we should be explicit about the need to detach the bcfg2-report-collector process. Side note: this bit me because I was starting the bcfg2 server processes via SSH, and the way python-daemon checks for being started by inetd is to see if stdin is a socket. (??)
* | Reporting: Fix collectorSol Jerome2013-08-311-6/+2
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Reporting: Fix call to read_config()Sol Jerome2013-08-281-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Reporting: Fix LocalFilesystem transportSol Jerome2013-08-122-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Merge branch 'maint'Chris St. Pierre2013-08-121-1/+1
|\| | | | | | | | | | | Conflicts: src/lib/Bcfg2/Server/Admin/Viz.py src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
| * Reporting: Fix typoSol Jerome2013-08-081-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Merge branch 'options-rewrite'Chris St. Pierre2013-08-089-181/+100
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/lib/Bcfg2/Client/Frame.py src/lib/Bcfg2/Options.py src/lib/Bcfg2/Server/Admin/Init.py src/lib/Bcfg2/Server/Admin/Xcmd.py src/lib/Bcfg2/Server/BuiltinCore.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/MultiprocessingCore.py src/lib/Bcfg2/Server/Plugin/base.py src/lib/Bcfg2/Server/Plugin/helpers.py src/lib/Bcfg2/Server/Plugins/Cfg/__init__.py src/lib/Bcfg2/Server/Plugins/Packages/Yum.py src/lib/Bcfg2/Server/Plugins/Packages/__init__.py src/lib/Bcfg2/Server/SSLServer.py src/lib/Bcfg2/Utils.py src/lib/Bcfg2/settings.py src/sbin/bcfg2-crypt src/sbin/bcfg2-info src/sbin/bcfg2-lint src/sbin/bcfg2-test src/sbin/bcfg2-yum-helper tools/bcfg2-profile-templates.py
| * Options: migrated reporting to new parserChris St. Pierre2013-06-279-181/+100
| |