Commit f13130168fa3c5923742f28eb2327195a0e5fcae
1 parent
082f3cd4
Exists in
master
and in
1 other branch
Default config options updated. Fixed bug with logging, config is Singleton.
Showing
2 changed files
with
42 additions
and
35 deletions
Show diff stats
src/bin/app_recommender.cfg
| @@ -3,34 +3,34 @@ | @@ -3,34 +3,34 @@ | ||
| 3 | [general] | 3 | [general] |
| 4 | # logging level | 4 | # logging level |
| 5 | debug = 0 | 5 | debug = 0 |
| 6 | -verbose = 0 | 6 | +verbose = 1 |
| 7 | # output file | 7 | # output file |
| 8 | #output = /dev/null | 8 | #output = /dev/null |
| 9 | -output = log-apprec | 9 | +output = log-popindex-desktop-full |
| 10 | 10 | ||
| 11 | [data_sources] | 11 | [data_sources] |
| 12 | # path to recommender filters | 12 | # path to recommender filters |
| 13 | filters = ~/.app-recommender/filters | 13 | filters = ~/.app-recommender/filters |
| 14 | # path to apt-xapian-index | 14 | # path to apt-xapian-index |
| 15 | #axi = /var/lib/apt-xapian-index/index | 15 | #axi = /var/lib/apt-xapian-index/index |
| 16 | -axi = /root/.app-recommender/DesktopAxi | 16 | +axi = /root/.app-recommender/axi_desktop |
| 17 | # DDE url | 17 | # DDE url |
| 18 | -dde_url = http://dde.debian.net/dde/q/udd/packages/all/%s?t=json | 18 | +#dde_url = http://dde.debian.net/dde/q/udd/packages/all/%s?t=json |
| 19 | +dde_url = http://46.4.235.200:8000/q/udd/packages/all/%s?t=json | ||
| 19 | # old, reindex, cluster, recluster | 20 | # old, reindex, cluster, recluster |
| 20 | index_mode = old | 21 | index_mode = old |
| 21 | # path to popcon index | 22 | # path to popcon index |
| 22 | -popcon_index = ~/.app-recommender/popcon-index_desktop_1000 | 23 | +popcon_index = ~/.app-recommender/popcon-index_desktop |
| 23 | # path to popcon submissions dir | 24 | # path to popcon submissions dir |
| 24 | -#popcon_dir = ~/.app-recommender/popcon_dir | ||
| 25 | -popcon_dir = ~/org/popcon.debian.org/popcon-mail/popcon-entries/ | 25 | +popcon_dir = ~/.app-recommender/popcon-entries |
| 26 | # path to valid_pkgs file | 26 | # path to valid_pkgs file |
| 27 | -pkgs_filter = program | 27 | +pkgs_filter = desktop |
| 28 | # path to popcon clusters dir | 28 | # path to popcon clusters dir |
| 29 | clusters_dir = ~/.app-recommender/clusters_dir_full | 29 | clusters_dir = ~/.app-recommender/clusters_dir_full |
| 30 | # number of medoids for clustering | 30 | # number of medoids for clustering |
| 31 | k_medoids = 100 | 31 | k_medoids = 100 |
| 32 | # number of popcon submission for indexing | 32 | # number of popcon submission for indexing |
| 33 | -max_popcon = 1000 | 33 | +max_popcon = 100000000 |
| 34 | 34 | ||
| 35 | [recommender] | 35 | [recommender] |
| 36 | # recommendation strategy | 36 | # recommendation strategy |
src/config.py
| @@ -26,8 +26,9 @@ import logging | @@ -26,8 +26,9 @@ import logging | ||
| 26 | import logging.handlers | 26 | import logging.handlers |
| 27 | 27 | ||
| 28 | from ConfigParser import * | 28 | from ConfigParser import * |
| 29 | +from singleton import Singleton | ||
| 29 | 30 | ||
| 30 | -class Config(): | 31 | +class Config(Singleton): |
| 31 | """ | 32 | """ |
| 32 | Class to handle configuration options. | 33 | Class to handle configuration options. |
| 33 | """ | 34 | """ |
| @@ -35,29 +36,33 @@ class Config(): | @@ -35,29 +36,33 @@ class Config(): | ||
| 35 | """ | 36 | """ |
| 36 | Set default configuration options. | 37 | Set default configuration options. |
| 37 | """ | 38 | """ |
| 38 | - self.debug = 0 | ||
| 39 | - self.verbose = 1 | ||
| 40 | - self.output = "/dev/null" | ||
| 41 | - self.filters = os.path.expanduser("~/.app-recommender/filters") | ||
| 42 | - #self.axi = "/var/lib/apt-xapian-index/index" | ||
| 43 | - self.axi = os.path.expanduser("~/.app-recommender/ProgramAxi") | ||
| 44 | - #self.dde_url = "http://dde.debian.net/dde/q/udd/packs/all/%s?t=json" | ||
| 45 | - self.dde_url = "http://46.4.235.200:8000/q/udd/packages/all/%s?t=json" | ||
| 46 | - self.popcon_index = os.path.expanduser("~/.app-recommender/popcon-index") | ||
| 47 | - self.popcon_dir = os.path.expanduser("~/.app-recommender/popcon-entries") | ||
| 48 | - self.pkgs_filter = "program" | ||
| 49 | - self.clusters_dir = os.path.expanduser("~/.app-recommender/clusters-dir") | ||
| 50 | - self.k_medoids = 100 | ||
| 51 | - self.max_popcon = 1000 | ||
| 52 | - self.index_mode = "old" | ||
| 53 | - self.strategy = "cb" | ||
| 54 | - self.weight = "bm25" | ||
| 55 | - self.profile_size = 50 | ||
| 56 | - # options: maximal, voted, desktop | ||
| 57 | - self.profiling = ["maximal"] | ||
| 58 | - self.k_neighbors = 100 | ||
| 59 | - self.load_options() | ||
| 60 | - self.set_logger() | 39 | + if not hasattr(self, 'initialized'): |
| 40 | + self.debug = 0 | ||
| 41 | + self.verbose = 1 | ||
| 42 | + #self.output = "/dev/null" | ||
| 43 | + self.output = "log" | ||
| 44 | + self.filters = os.path.expanduser("~/.app-recommender/filters") | ||
| 45 | + #self.axi = "/var/lib/apt-xapian-index/index" | ||
| 46 | + self.axi = os.path.expanduser("~/.app-recommender/ProgramAxi") | ||
| 47 | + #self.dde_url = "http://dde.debian.net/dde/q/udd/packs/all/%s?t=json" | ||
| 48 | + self.dde_url = "http://46.4.235.200:8000/q/udd/packages/all/%s?t=json" | ||
| 49 | + self.popcon_index = os.path.expanduser("~/.app-recommender/popcon-index") | ||
| 50 | + self.popcon_dir = os.path.expanduser("~/.app-recommender/popcon-entries") | ||
| 51 | + self.pkgs_filter = "program" | ||
| 52 | + self.clusters_dir = os.path.expanduser("~/.app-recommender/clusters-dir") | ||
| 53 | + self.k_medoids = 100 | ||
| 54 | + self.max_popcon = 1000 | ||
| 55 | + self.index_mode = "old" | ||
| 56 | + self.strategy = "cb" | ||
| 57 | + self.weight = "bm25" | ||
| 58 | + self.profile_size = 50 | ||
| 59 | + # options: maximal, voted, desktop | ||
| 60 | + self.profiling = ["maximal"] | ||
| 61 | + self.k_neighbors = 100 | ||
| 62 | + self.load_options() | ||
| 63 | + self.set_logger() | ||
| 64 | + self.initialized = 1 | ||
| 65 | + logging.info("Basic config") | ||
| 61 | 66 | ||
| 62 | def usage(self): | 67 | def usage(self): |
| 63 | """ | 68 | """ |
| @@ -226,7 +231,9 @@ class Config(): | @@ -226,7 +231,9 @@ class Config(): | ||
| 226 | file_handler = logging.handlers.RotatingFileHandler(self.output, | 231 | file_handler = logging.handlers.RotatingFileHandler(self.output, |
| 227 | maxBytes=50000000, | 232 | maxBytes=50000000, |
| 228 | backupCount=5) | 233 | backupCount=5) |
| 229 | - log_format = '%(asctime)s AppRecommender %(levelname)-8s %(message)s' | ||
| 230 | - file_handler.setFormatter(logging.Formatter(log_format)) | 234 | + log_format = '%(asctime)s %(levelname)-8s %(message)s' |
| 235 | + file_handler.setFormatter(logging.Formatter(log_format, | ||
| 236 | + datefmt='%Y-%m-%d %H:%M:%S')) | ||
| 231 | file_handler.setLevel(log_level) | 237 | file_handler.setLevel(log_level) |
| 232 | self.logger.addHandler(file_handler) | 238 | self.logger.addHandler(file_handler) |
| 239 | + logging.info("Set up logger") |