diff options
author | Adrian Hunter <adrian.hunter@intel.com> | 2019-04-12 07:38:27 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-05-28 17:37:45 -0400 |
commit | 3cd3216dbb421244b96b992f193e778a3baa2220 (patch) | |
tree | 924526cd5fc0ef106216404c1bfec683c74fca63 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | bfb3170e2481b76a4f8aae94176e45d681a37f3e (diff) |
perf scripts python: export-to-postgresql.py: Add support for pyside2
pyside2 is the future for pyside support.
Note pyside use Qt4 whereas pyside2 uses Qt5.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/20190412113830.4126-6-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
-rw-r--r-- | tools/perf/scripts/python/export-to-postgresql.py | 43 |
1 files changed, 34 insertions, 9 deletions
diff --git a/tools/perf/scripts/python/export-to-postgresql.py b/tools/perf/scripts/python/export-to-postgresql.py index c3eae1d77d36..b2f481b0d28d 100644 --- a/tools/perf/scripts/python/export-to-postgresql.py +++ b/tools/perf/scripts/python/export-to-postgresql.py | |||
@@ -27,18 +27,31 @@ import datetime | |||
27 | # | 27 | # |
28 | # fedora: | 28 | # fedora: |
29 | # | 29 | # |
30 | # $ sudo yum install postgresql postgresql-server python-pyside qt-postgresql | 30 | # $ sudo yum install postgresql postgresql-server qt-postgresql |
31 | # $ sudo su - postgres -c initdb | 31 | # $ sudo su - postgres -c initdb |
32 | # $ sudo service postgresql start | 32 | # $ sudo service postgresql start |
33 | # $ sudo su - postgres | 33 | # $ sudo su - postgres |
34 | # $ createuser <your user id here> | 34 | # $ createuser -s <your user id here> # Older versions may not support -s, in which case answer the prompt below: |
35 | # Shall the new role be a superuser? (y/n) y | 35 | # Shall the new role be a superuser? (y/n) y |
36 | # $ sudo yum install python-pyside | ||
37 | # | ||
38 | # Alternately, to use Python3 and/or pyside 2, one of the following: | ||
39 | # $ sudo yum install python3-pyside | ||
40 | # $ pip install --user PySide2 | ||
41 | # $ pip3 install --user PySide2 | ||
36 | # | 42 | # |
37 | # ubuntu: | 43 | # ubuntu: |
38 | # | 44 | # |
39 | # $ sudo apt-get install postgresql python-pyside.qtsql libqt4-sql-psql | 45 | # $ sudo apt-get install postgresql |
40 | # $ sudo su - postgres | 46 | # $ sudo su - postgres |
41 | # $ createuser -s <your user id here> | 47 | # $ createuser -s <your user id here> |
48 | # $ sudo apt-get install python-pyside.qtsql libqt4-sql-psql | ||
49 | # | ||
50 | # Alternately, to use Python3 and/or pyside 2, one of the following: | ||
51 | # | ||
52 | # $ sudo apt-get install python3-pyside.qtsql libqt4-sql-psql | ||
53 | # $ sudo apt-get install python-pyside2.qtsql libqt5sql5-psql | ||
54 | # $ sudo apt-get install python3-pyside2.qtsql libqt5sql5-psql | ||
42 | # | 55 | # |
43 | # An example of using this script with Intel PT: | 56 | # An example of using this script with Intel PT: |
44 | # | 57 | # |
@@ -199,7 +212,16 @@ import datetime | |||
199 | # print "{0:>6} {1:>10} {2:>9} {3:<30} {4:>6} {5:<30}".format(query.value(0), query.value(1), query.value(2), query.value(3), query.value(4), query.value(5)) | 212 | # print "{0:>6} {1:>10} {2:>9} {3:<30} {4:>6} {5:<30}".format(query.value(0), query.value(1), query.value(2), query.value(3), query.value(4), query.value(5)) |
200 | # call_path_id = query.value(6) | 213 | # call_path_id = query.value(6) |
201 | 214 | ||
202 | from PySide.QtSql import * | 215 | pyside_version_1 = True |
216 | if not "pyside-version-1" in sys.argv: | ||
217 | try: | ||
218 | from PySide2.QtSql import * | ||
219 | pyside_version_1 = False | ||
220 | except: | ||
221 | pass | ||
222 | |||
223 | if pyside_version_1: | ||
224 | from PySide.QtSql import * | ||
203 | 225 | ||
204 | if sys.version_info < (3, 0): | 226 | if sys.version_info < (3, 0): |
205 | def toserverstr(str): | 227 | def toserverstr(str): |
@@ -255,11 +277,12 @@ def printdate(*args, **kw_args): | |||
255 | print(datetime.datetime.today(), *args, sep=' ', **kw_args) | 277 | print(datetime.datetime.today(), *args, sep=' ', **kw_args) |
256 | 278 | ||
257 | def usage(): | 279 | def usage(): |
258 | printerr("Usage is: export-to-postgresql.py <database name> [<columns>] [<calls>] [<callchains>]") | 280 | printerr("Usage is: export-to-postgresql.py <database name> [<columns>] [<calls>] [<callchains>] [<pyside-version-1>]"); |
259 | printerr("where: columns 'all' or 'branches'") | 281 | printerr("where: columns 'all' or 'branches'"); |
260 | printerr(" calls 'calls' => create calls and call_paths table") | 282 | printerr(" calls 'calls' => create calls and call_paths table"); |
261 | printerr(" callchains 'callchains' => create call_paths table") | 283 | printerr(" callchains 'callchains' => create call_paths table"); |
262 | raise Exception("Too few arguments") | 284 | printerr(" pyside-version-1 'pyside-version-1' => use pyside version 1"); |
285 | raise Exception("Too few or bad arguments") | ||
263 | 286 | ||
264 | if (len(sys.argv) < 2): | 287 | if (len(sys.argv) < 2): |
265 | usage() | 288 | usage() |
@@ -281,6 +304,8 @@ for i in range(3,len(sys.argv)): | |||
281 | perf_db_export_calls = True | 304 | perf_db_export_calls = True |
282 | elif (sys.argv[i] == "callchains"): | 305 | elif (sys.argv[i] == "callchains"): |
283 | perf_db_export_callchains = True | 306 | perf_db_export_callchains = True |
307 | elif (sys.argv[i] == "pyside-version-1"): | ||
308 | pass | ||
284 | else: | 309 | else: |
285 | usage() | 310 | usage() |
286 | 311 | ||