diff --git a/.project b/.project index 96acbb5..e0e6f49 100644 --- a/.project +++ b/.project @@ -19,4 +19,11 @@ org.eclipse.wst.common.project.facet.core.nature + + + _MasterFiles_ + 2 + virtual:/virtual + + diff --git a/src/vue-poc/app.vue b/src/vue-poc/app.vue index 84b5dda..4292a45 100644 --- a/src/vue-poc/app.vue +++ b/src/vue-poc/app.vue @@ -151,8 +151,7 @@ {href: '/tabs',text: 'Tabs',icon: 'switch_camera'}, {href: '/validate',text: 'Validate',icon: 'playlist_add_check'}, {href: '/transform',text: 'XSLT Transform',icon: 'forward'}, - {href: '/tasks',text: 'Tasks',icon: 'update'}, - {href: '/logdate',text: 'XML logs',icon: 'dns'}, + {href: '/history/tasks',text: 'history',icon: 'history'} ]}, { @@ -163,6 +162,8 @@ {href: '/database', text: 'Databases',icon: 'developer_mode' }, {href: '/files', text: 'File system',icon: 'folder' }, {href: '/documentation', text: 'Documentation',icon: 'library_books' }, + {href: '/tasks',text: 'Tasks',icon: 'update'}, + {href: '/logdate',text: 'XML logs',icon: 'dns'}, {href: '/history/files',text: 'history',icon: 'history'} ]}, { diff --git a/src/vue-poc/components/qd-range.vue b/src/vue-poc/components/qd-range.vue new file mode 100644 index 0000000..4ea7fc2 --- /dev/null +++ b/src/vue-poc/components/qd-range.vue @@ -0,0 +1,33 @@ + + + + + diff --git a/src/vue-poc/components/vis-time-line.vue b/src/vue-poc/components/vis-time-line.vue index d61aede..e634b90 100644 --- a/src/vue-poc/components/vis-time-line.vue +++ b/src/vue-poc/components/vis-time-line.vue @@ -25,6 +25,9 @@ for vis-time-line http://visjs.org/docs/graph2d/ items(newItems){ console.log("timeline new:" + newItems.length) this.rebuild(newItems) + }, + options(newOpts){ + console.log("opts: ",newOpts) } }, mounted: function () { diff --git a/src/vue-poc/components/vue-ace.vue b/src/vue-poc/components/vue-ace.vue index 711eb27..e53561e 100644 --- a/src/vue-poc/components/vue-ace.vue +++ b/src/vue-poc/components/vue-ace.vue @@ -57,11 +57,14 @@ event fired cmd outline }, "settings":{ handler:function(vnew,vold){ + //console.log("aCe settings:",vnew,this) this.applySettings(vnew) - // alert("setting") }, deep:true - } + }, + + // whenever theme changes, this function will run + "$vuetify.theme.dark": function (newState) {this.setTheme()} }, methods:{ @@ -109,10 +112,7 @@ event fired cmd outline } }, - watch: { - // whenever theme changes, this function will run - "$vuetify.theme.dark": function (newState) {this.setTheme()} - }, + mounted () { const mode = this.mode || 'text' diff --git a/src/vue-poc/core.js b/src/vue-poc/core.js index da7469e..208ffb9 100644 --- a/src/vue-poc/core.js +++ b/src/vue-poc/core.js @@ -100,8 +100,6 @@ return $a `}, "edit/query": "todo edit/query" }, - - getItem (key) { if (this.debug) console.log('getItem',key); return localforage.getItem(key) @@ -115,6 +113,7 @@ return $a `}, }); }, + setItem (key,value) { if (this.debug) console.log('setItem',key,value); return localforage.setItem(key, value) @@ -136,11 +135,12 @@ return $a `}, }).catch(err => { console.log('delete failed'); }); - }, + }, + keys(){ return localforage.keys() // returns array of keys - }, + clear(){ localforage.clear() } diff --git a/src/vue-poc/data/vue-poc/entities/basexjob.xml b/src/vue-poc/data/vue-poc/entities/basex.job.xml similarity index 87% rename from src/vue-poc/data/vue-poc/entities/basexjob.xml rename to src/vue-poc/data/vue-poc/entities/basex.job.xml index 6e955b1..5e231b2 100644 --- a/src/vue-poc/data/vue-poc/entities/basexjob.xml +++ b/src/vue-poc/data/vue-poc/entities/basex.job.xml @@ -1,6 +1,5 @@ - - A BaseX job - + + An active BaseX job unique id @@ -27,7 +26,7 @@ @start - start + duration @duration diff --git a/src/vue-poc/data/vue-poc/entities/basexlog.xml b/src/vue-poc/data/vue-poc/entities/basex.log.xml similarity index 93% rename from src/vue-poc/data/vue-poc/entities/basexlog.xml rename to src/vue-poc/data/vue-poc/entities/basex.log.xml index 62457cf..3a00edd 100644 --- a/src/vue-poc/data/vue-poc/entities/basexlog.xml +++ b/src/vue-poc/data/vue-poc/entities/basex.log.xml @@ -1,4 +1,4 @@ - + BaseX log entries for today and yesterday from the running server diff --git a/src/vue-poc/data/vue-poc/entities/repository.xml b/src/vue-poc/data/vue-poc/entities/basex.repo.xml similarity index 87% rename from src/vue-poc/data/vue-poc/entities/repository.xml rename to src/vue-poc/data/vue-poc/entities/basex.repo.xml index ae5ed85..64d9ba9 100644 --- a/src/vue-poc/data/vue-poc/entities/repository.xml +++ b/src/vue-poc/data/vue-poc/entities/basex.repo.xml @@ -1,4 +1,4 @@ - + An entry in the basex repository diff --git a/src/vue-poc/data/vue-poc/entities/service.xml b/src/vue-poc/data/vue-poc/entities/basex.service.xml similarity index 91% rename from src/vue-poc/data/vue-poc/entities/service.xml rename to src/vue-poc/data/vue-poc/entities/basex.service.xml index 818e5ac..11a0728 100644 --- a/src/vue-poc/data/vue-poc/entities/service.xml +++ b/src/vue-poc/data/vue-poc/entities/basex.service.xml @@ -1,4 +1,4 @@ - + basex services a list of all jobs that have been persistently registered as Services. diff --git a/src/vue-poc/data/vue-poc/entities/user.xml b/src/vue-poc/data/vue-poc/entities/basex.user.xml similarity index 83% rename from src/vue-poc/data/vue-poc/entities/user.xml rename to src/vue-poc/data/vue-poc/entities/basex.user.xml index 9c972d7..ef064a7 100644 --- a/src/vue-poc/data/vue-poc/entities/user.xml +++ b/src/vue-poc/data/vue-poc/entities/basex.user.xml @@ -1,4 +1,4 @@ - + A BaseX user diff --git a/src/vue-poc/data/vue-poc/entities/basexlogfile.xml b/src/vue-poc/data/vue-poc/entities/basexlogfile.xml index 7b6cb7b..06dc137 100644 --- a/src/vue-poc/data/vue-poc/entities/basexlogfile.xml +++ b/src/vue-poc/data/vue-poc/entities/basexlogfile.xml @@ -1,20 +1,45 @@ - saved BaseX log entries in the vue-poc database + list of saved BaseX log files with entries in the vue-poc database log date - text()!fn:replace(.,".*(\d{4}-\d{2}-\d{2}).*","$1") + @date file name - . + @file + + + total entries + @entries + + + longest response time (secs) + @max + + + entries by hour + @perhr - - - db:dir("vue-poc","logs") + + let $hrs:=(0 to 23)!format-number(., "00") + for $item in db:dir("vue-poc","logs") + let $es:=db:open("vue-poc","logs/" || $item)/entries/entry + let $max:=round(max($es/@ms) div 1000) + let $times:=(for $e in $es + group by $hr:=substring($e/@time,1,2) + return map:entry($hr, max($e/@ms)))=>map:merge() + let $c:=for $h in $hrs return if(map:contains($times,$h)) then map:get($times,$h) else 0 + + return <day file="{ $item }" + date="{ fn:replace($item,".*(\d{4}-\d{2}-\d{2}).*","$1")}" + entries="{ count($es) }" + max="{ $max }" + perhr="{ string-join($c,' ') }" + /> \ No newline at end of file diff --git a/src/vue-poc/data/vue-poc/entities/logxml.xml b/src/vue-poc/data/vue-poc/entities/logxml.xml index 17c274d..4c244f7 100644 --- a/src/vue-poc/data/vue-poc/entities/logxml.xml +++ b/src/vue-poc/data/vue-poc/entities/logxml.xml @@ -4,11 +4,11 @@ time of event - concat("2019-01-01",'T',@time) + @date end time of event - self::*[@ms]!(xs:dateTime(concat("2019-01-01",'T',@time))+ xs:dayTimeDuration("PT" || (@ms div 1000) || "S")) + self::*[@ms]!(xs:dateTime(@date)+ xs:dayTimeDuration("PT" || (@ms div 1000) || "S")) IP address @@ -34,6 +34,6 @@ - db:open("vue-poc","/logs/")[1]/entries/entry + db:open("vue-poc","/logs/")[1]/entries/entry (: test data 1st doc :) \ No newline at end of file diff --git a/src/vue-poc/features/adminlog/basexlogdate.vue b/src/vue-poc/features/adminlog/basexlogdate.vue index 994d911..bfc3915 100644 --- a/src/vue-poc/features/adminlog/basexlogdate.vue +++ b/src/vue-poc/features/adminlog/basexlogdate.vue @@ -13,10 +13,6 @@ - refresh - + refresh @@ -42,6 +41,16 @@ {{ item.date }} + +