about summary refs log tree commit diff
path: root/wqflask/wqflask/do_search.py
diff options
context:
space:
mode:
Diffstat (limited to 'wqflask/wqflask/do_search.py')
-rw-r--r--[-rwxr-xr-x]wqflask/wqflask/do_search.py67
1 files changed, 25 insertions, 42 deletions
diff --git a/wqflask/wqflask/do_search.py b/wqflask/wqflask/do_search.py
index d89facfe..ad3eab79 100755..100644
--- a/wqflask/wqflask/do_search.py
+++ b/wqflask/wqflask/do_search.py
@@ -1,6 +1,3 @@
-#!/usr/bin/python
-
-
 from __future__ import print_function, division
 
 import string
@@ -11,10 +8,13 @@ from MySQLdb import escape_string as escape
 from pprint import pformat as pf
 
 import sys
-sys.path.append("..")
+# sys.path.append("..") Never in a running webserver
 
-from dbFunction import webqtlDatabaseFunction
+from db import webqtlDatabaseFunction
 
+import logging
+from utility.logger import getLogger
+logger = getLogger(__name__)
 
 class DoSearch(object):
     """Parent class containing parameters/functions used for all searches"""
@@ -30,15 +30,15 @@ class DoSearch(object):
         self.dataset = dataset
 
         if self.dataset:
-            print("self.dataset is boo: ", type(self.dataset), pf(self.dataset))
-            print("self.dataset.group is: ", pf(self.dataset.group))
+            logger.debug("self.dataset is boo: ", type(self.dataset), pf(self.dataset))
+            logger.debug("self.dataset.group is: ", pf(self.dataset.group))
             #Get group information for dataset and the species id
             self.species_id = webqtlDatabaseFunction.retrieve_species_id(self.dataset.group.name)
 
     def execute(self, query):
         """Executes query and returns results"""
         query = self.normalize_spaces(query)
-        print("in do_search query is:", pf(query))
+        logger.sql(query)
         results = g.db.execute(query, no_parameters=True).fetchall()
         return results
 
@@ -56,7 +56,7 @@ class DoSearch(object):
     def mescape(self, *items):
         """Multiple escape"""
         escaped = [escape(str(item)) for item in items]
-        print("escaped is:", escaped)
+        logger.debug("escaped is:", escaped)
         return tuple(escaped)
 
     def normalize_spaces(self, stringy):
@@ -66,13 +66,13 @@ class DoSearch(object):
 
     @classmethod
     def get_search(cls, search_type):
-        print("search_types are:", pf(cls.search_types))
+        logger.debug("search_types are:", pf(cls.search_types))
 
         search_type_string = search_type['dataset_type']
         if 'key' in search_type:
             search_type_string += '_' + search_type['key']
 
-        print("search_type_string is:", search_type_string)
+        logger.debug("search_type_string is:", search_type_string)
 
         if search_type_string in cls.search_types:
             return cls.search_types[search_type_string]
@@ -100,7 +100,7 @@ class QuickMrnaAssaySearch(DoSearch):
     def run(self):
         """Generates and runs a search for assays across all mRNA expression datasets"""
 
-        print("Running ProbeSetSearch")
+        logger.debug("Running ProbeSetSearch")
         query = self.base_query + """WHERE (MATCH (ProbeSet.Name,
                     ProbeSet.description,
                     ProbeSet.symbol,
@@ -108,8 +108,6 @@ class QuickMrnaAssaySearch(DoSearch):
                     AGAINST ('%s' IN BOOLEAN MODE))
                             """ % (escape(self.search_term[0]))
 
-        print("final query is:", pf(query))
-
         return self.execute(query)
 
 
@@ -175,15 +173,12 @@ class MrnaAssaySearch(DoSearch):
                             """ % (escape(from_clause),
                                     where_clause,
                                     escape(str(self.dataset.id))))
-
-        #print("query is:", pf(query))
-
         return query
 
     def run_combined(self, from_clause = '', where_clause = ''):
         """Generates and runs a combined search of an mRNA expression dataset"""
 
-        print("Running ProbeSetSearch")
+        logger.debug("Running ProbeSetSearch")
         #query = self.base_query + from_clause + " WHERE " + where_clause
 
         from_clause = self.normalize_spaces(from_clause)
@@ -198,19 +193,15 @@ class MrnaAssaySearch(DoSearch):
                                     where_clause,
                                     escape(str(self.dataset.id))))
 
-        print("final query is:", pf(query))
-
         return self.execute(query)
 
     def run(self):
         """Generates and runs a simple search of an mRNA expression dataset"""
 
-        print("Running ProbeSetSearch")
+        logger.debug("Running ProbeSetSearch")
         where_clause = self.get_where_clause()
         query = self.base_query + "WHERE " + where_clause + "ORDER BY ProbeSet.symbol ASC"
 
-        #print("final query is:", pf(query))
-
         return self.execute(query)
 
 
@@ -290,14 +281,12 @@ class PhenotypeSearch(DoSearch):
                             escape(str(self.dataset.group.id)),
                             escape(str(self.dataset.id))))
 
-        print("query is:", pf(query))
-
         return query
 
     def run_combined(self, from_clause, where_clause):
         """Generates and runs a combined search of an phenotype dataset"""
 
-        print("Running PhenotypeSearch")
+        logger.debug("Running PhenotypeSearch")
 
         from_clause = self.normalize_spaces(from_clause)
 
@@ -313,9 +302,6 @@ class PhenotypeSearch(DoSearch):
                         escape(str(self.dataset.group.id)),
                         escape(str(self.dataset.id))))
 
-        print("final query is:", pf(query))
-
-
         return self.execute(query)
 
     def run(self):
@@ -364,8 +350,6 @@ class QuickPhenotypeSearch(PhenotypeSearch):
                     PublishXRef.InbredSetId = InbredSet.Id and
                     InbredSet.SpeciesId = Species.Id""" % where_clause)
 
-        print("query is:", pf(query))
-
         return query
 
     def run(self):
@@ -408,7 +392,7 @@ class GenotypeSearch(DoSearch):
             where_clause.append('''%s REGEXP "%s"''' % ("%s.%s" % self.mescape(self.dataset.type,
                                                                                field),
                                                                                self.search_term))
-        print("hello ;where_clause is:", pf(where_clause))
+        logger.debug("hello ;where_clause is:", pf(where_clause))
         where_clause = "(%s) " % ' OR '.join(where_clause)
 
         return where_clause
@@ -432,8 +416,6 @@ class GenotypeSearch(DoSearch):
                         and GenoFreeze.Id = %s"""% (where_clause,
                                                 escape(str(self.dataset.id))))
 
-        print("query is:", pf(query))
-
         return query
 
     def run(self):
@@ -586,7 +568,7 @@ class LrsSearch(DoSearch):
                                                            self.species_id)
         else:
             # Deal with >, <, >=, and <=
-            print("self.search_term is:", self.search_term)
+            logger.debug("self.search_term is:", self.search_term)
             where_clause = """ %sXRef.LRS %s %s """ % self.mescape(self.dataset.type,
                                                                         self.search_operator,
                                                                         self.search_term[0])
@@ -787,7 +769,7 @@ class MeanSearch(MrnaAssaySearch):
 
     def get_final_query(self):
         self.where_clause = self.get_where_clause()
-        print("where_clause is:", pf(self.where_clause))
+        logger.debug("where_clause is:", pf(self.where_clause))
 
         self.query = self.compile_final_query(where_clause = self.where_clause)
 
@@ -795,7 +777,7 @@ class MeanSearch(MrnaAssaySearch):
 
     def run(self):
         self.where_clause = self.get_where_clause()
-        print("where_clause is:", pf(self.where_clause))
+        logger.debug("where_clause is:", pf(self.where_clause))
 
         self.query = self.compile_final_query(where_clause = self.where_clause)
 
@@ -825,7 +807,7 @@ class RangeSearch(MrnaAssaySearch):
                                      WHERE ProbeSetData.Id = ProbeSetXRef.dataId) > %s
                                     """ % (escape(self.search_term[0]))
 
-        print("where_clause is:", pf(where_clause))
+        logger.debug("where_clause is:", pf(where_clause))
 
         return where_clause
 
@@ -927,10 +909,11 @@ class PvalueSearch(MrnaAssaySearch):
                                         self.search_operator,
                                         self.search_term[0])
 
-        print("where_clause is:", pf(self.where_clause))
+        logger.debug("where_clause is:", pf(self.where_clause))
 
         self.query = self.compile_final_query(where_clause = self.where_clause)
 
+        logger.sql(self.query)
         return self.execute(self.query)
 
 class AuthorSearch(PhenotypeSearch):
@@ -966,7 +949,7 @@ if __name__ == "__main__":
     from base.data_set import create_dataset
     from base.templatePage import templatePage
     from utility import webqtlUtil
-    from dbFunction import webqtlDatabaseFunction
+    from db import webqtlDatabaseFunction
 
     db_conn = MySQLdb.Connect(db=webqtlConfig.DB_NAME,
                               host=webqtlConfig.MYSQL_SERVER,
@@ -992,7 +975,7 @@ if __name__ == "__main__":
     #            ProbeSet.Id = ProbeSetXRef.ProbeSetId and
     #            ProbeSetXRef.ProbeSetFreezeId = 112""")
 
-    #print(pf(cursor.fetchall()))
+    #logger.debug(pf(cursor.fetchall()))
     #results = ProbeSetSearch("shh", None, dataset, cursor, db_conn).run()
     results = PvalueSearch(['0.005'], '<', dataset, cursor, db_conn).run()
     #results = RifSearch("diabetes", dataset, cursor, db_conn).run()
@@ -1004,4 +987,4 @@ if __name__ == "__main__":
     #results = GenotypeSearch("rs13475699", dataset, cursor, db_conn).run()
     #results = GoSearch("0045202", dataset, cursor, db_conn).run()
 
-    print("results are:", pf(results))
+    logger.debug("results are:", pf(results))