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") |