diff --git a/ide/src/base-ui/select/LitSelectOption.ts b/ide/src/base-ui/select/LitSelectOption.ts index 8dbe1a349e9b0aff72f1bc9b81a6639d4658e347..fe91b6044146446166279460b4d30a8e68c78110 100644 --- a/ide/src/base-ui/select/LitSelectOption.ts +++ b/ide/src/base-ui/select/LitSelectOption.ts @@ -109,7 +109,7 @@ export class LitSelectOption extends BaseElement { adoptedCallback(): void {} //当 custom element增加、删除、修改自身属性时,被调用。 - attributeChangedCallback(name: any, oldValue: any, newValue: any): void {} + attributeChangedCallback(name: unknown, oldValue: unknown, newValue: unknown): void {} } if (!customElements.get('lit-select-option')) { diff --git a/ide/src/base-ui/select/LitSelectV.ts b/ide/src/base-ui/select/LitSelectV.ts index cd92a723a7d4182dc4755d48c0538ff5b1a7c61a..290c42e7d9c8afddc10c9c3cb05eb12e4bd7c68d 100644 --- a/ide/src/base-ui/select/LitSelectV.ts +++ b/ide/src/base-ui/select/LitSelectV.ts @@ -22,10 +22,10 @@ export class LitSelectV extends BaseElement { showItems: Array = []; itemValue: Array = []; customItem: Array = []; - private focused: any; - private selectVInputEl: any; - private selectVSearchInputEl: any; - private selectVIconEl: any; + private focused: unknown; + private selectVInputEl: unknown; + private selectVSearchInputEl: unknown; + private selectVIconEl: unknown; private selectVOptions: HTMLDivElement | undefined; private selectVBody: HTMLDivElement | undefined; @@ -35,7 +35,7 @@ export class LitSelectV extends BaseElement { return ['value', 'default-value', 'placeholder', 'disabled', 'show-search', 'border', 'mode']; } - get value(): string { + get value(): string {// @ts-ignore return this.selectVInputEl!.value || this.defaultValue; } @@ -157,36 +157,36 @@ export class LitSelectV extends BaseElement { this.selectVSearchInputEl = this.shadowRoot!.querySelector('#search-input') as HTMLInputElement; this.selectVBody = this.shadowRoot!.querySelector('.body') as HTMLDivElement; this.selectVOptions = this.shadowRoot!.querySelector('.body-opt') as HTMLDivElement; - this.selectVIconEl = this.shadowRoot!.querySelector('.icon'); + this.selectVIconEl = this.shadowRoot!.querySelector('.icon');// @ts-ignore this.selectVInputEl!.oninput = (ev: InputEvent): void => { // @ts-ignore - if (this.selectVInputEl!.value === '00') { + if (this.selectVInputEl!.value === '00') {// @ts-ignore this.selectVInputEl!.value = '0'; ev.preventDefault(); - } + }// @ts-ignore if (this.selectVInputEl!.value === '') { this.shadowRoot?.querySelectorAll('lit-select-option').forEach((it) => { it.removeAttribute('selected'); this.showItems = []; }); } - }; + };// @ts-ignore this.selectVSearchInputEl!.onkeydown = (ev: KeyboardEvent): void => { // @ts-ignore if (ev.key === '0' && ev.target.value.length === 1 && ev.target.value === '0') { ev.preventDefault(); } }; - this.onclick = (ev: any): void => { + this.onclick = (ev: unknown): void => { if (this.focused === false) { this.focused = true; } else { this.focused = false; } - }; + };// @ts-ignore this.selectVSearchInputEl?.addEventListener('keyup', () => { let options = [...this.shadowRoot!.querySelectorAll('.option')]; - options.filter((a: LitSelectOption) => { + options.filter((a: LitSelectOption) => {// @ts-ignore if (a.textContent!.indexOf(this.selectVSearchInputEl!.value) <= -1) { a.style.display = 'none'; } else { @@ -200,13 +200,13 @@ export class LitSelectV extends BaseElement { setEvent(): void { this.onmouseout = this.onblur = (ev): void => { this.focused = false; - }; - this.selectVInputEl.onfocus = (ev: any): void => { + };// @ts-ignore + this.selectVInputEl.onfocus = (ev: unknown): void => { if (this.hasAttribute('disabled')) { return; } - }; - this.selectVInputEl.onblur = (ev: any): void => { + };// @ts-ignore + this.selectVInputEl.onblur = (ev: unknown): void => { if (this.hasAttribute('disabled')) { return; } @@ -240,11 +240,11 @@ export class LitSelectV extends BaseElement { ) as LitSelectOption; this.shadowRoot?.querySelectorAll('lit-select-option').forEach((a) => { a.setAttribute('check', ''); - a.addEventListener('onSelected', (e: any) => { + a.addEventListener('onSelected', (e: unknown) => { if (a.hasAttribute('selected')) { let number = this.showItems.indexOf(a.textContent!); if (number > -1) { - this.showItems!.splice(number, 1); + this.showItems!.splice(number, 1);// @ts-ignore this.selectVInputEl!.value = this.showItems; } this.all = false; @@ -255,7 +255,7 @@ export class LitSelectV extends BaseElement { let index = this.itemValue.indexOf(a.textContent!); let value = this.showItems.indexOf(a.textContent!); if (index > -1 && value === -1) { - this.showItems.push(a.textContent!); + this.showItems.push(a.textContent!);// @ts-ignore this.selectVInputEl!.value = this.showItems; } if (this.showItems.length >= this.itemValue.length) { @@ -275,7 +275,7 @@ export class LitSelectV extends BaseElement { initOptions(): void { this.shadowRoot?.querySelectorAll('lit-select-option').forEach((a) => { a.setAttribute('check', ''); - a.addEventListener('onSelected', (e: any) => { + a.addEventListener('onSelected', (e: unknown) => { if (a.hasAttribute('selected')) { let number = this.showItems.indexOf(a.textContent!); if (number > -1) { @@ -288,7 +288,7 @@ export class LitSelectV extends BaseElement { this.showItems.push(a.textContent!); } a.setAttribute('selected', ''); - } + }// @ts-ignore let items = this.selectVInputEl!.value.split(','); this.customItem = []; items.forEach((item: string) => { @@ -299,9 +299,9 @@ export class LitSelectV extends BaseElement { } } }); - if (this.customItem.length > 0) { + if (this.customItem.length > 0) {// @ts-ignore this.selectVInputEl.value = this.customItem.concat(this.showItems); - } else { + } else {// @ts-ignore this.selectVInputEl.value = this.showItems; } }); @@ -317,18 +317,18 @@ export class LitSelectV extends BaseElement { }); this.itemValue.forEach((i) => { this.showItems.push(i); - }); + });// @ts-ignore this.selectVInputEl.value = this.itemValue; } else { this.shadowRoot?.querySelectorAll('lit-select-option').forEach((i) => { i.removeAttribute('selected'); this.all = false; }); - this.showItems = []; + this.showItems = [];// @ts-ignore this.selectVInputEl.value = ''; } }); } - attributeChangedCallback(name: any, oldValue: any, newValue: any): void {} + attributeChangedCallback(name: unknown, oldValue: unknown, newValue: unknown): void {} } diff --git a/ide/src/base-ui/slicer/lit-slicer.ts b/ide/src/base-ui/slicer/lit-slicer.ts index 70133942b54fb4cee06e977584fbda4d053a3f5c..b242da7d2e3540b266a9ba8175df8129754738cc 100644 --- a/ide/src/base-ui/slicer/lit-slicer.ts +++ b/ide/src/base-ui/slicer/lit-slicer.ts @@ -40,9 +40,9 @@ export class LitSlicer extends HTMLElement { `; } - set direction(val: any) { + set direction(val: unknown) { // @ts-ignore if (val.startsWith('h')) { - this.shadowRoot!.querySelector('div')!.style.flexDirection = 'row'; + this.shadowRoot!.querySelector('div')!.style.flexDirection = 'row'; // @ts-ignore } else if (val.startsWith('v')) { this.shadowRoot!.querySelector('div')!.style.flexDirection = 'column'; } @@ -52,14 +52,14 @@ export class LitSlicer extends HTMLElement { disconnectedCallback(): void {} - attributeChangedCallback(name: any, oldValue: any, newValue: any): void { - (this as any)[name] = newValue; + attributeChangedCallback(name: unknown, oldValue: unknown, newValue: unknown): void { // @ts-ignore + (this as unknown)[name] = newValue; } - - set style(v: any) {} + // @ts-ignore + set style(v: unknown) {} } -if (!customElements.get('lit-slicer')) { +if (!customElements.get('lit-slicer')) { // @ts-ignore customElements.define('lit-slicer', LitSlicer); } @@ -199,7 +199,7 @@ export class LitSlicerTrack extends HTMLElement { adoptedCallback(): void {} //当 custom element增加、删除、修改自身属性时,被调用。 - attributeChangedCallback(name: any, oldValue: any, newValue: any): void {} + attributeChangedCallback(name: unknown, oldValue: unknown, newValue: unknown): void {} } if (!customElements.get('lit-slicer-track')) { diff --git a/ide/src/base-ui/slider/LitSlider.ts b/ide/src/base-ui/slider/LitSlider.ts index 719a695f027e4a362972045158c7f29c251179ec..47dad25dfa2d4d56f466c46ec89558419f57fd06 100644 --- a/ide/src/base-ui/slider/LitSlider.ts +++ b/ide/src/base-ui/slider/LitSlider.ts @@ -289,7 +289,7 @@ export class LitSlider extends BaseElement { } }; - inputChangeEvent = (event: any): void => { + inputChangeEvent = (event: unknown): void => { if (this.litSlider) { this.currentValue = parseInt(this.litSlider?.value); let resultNumber = diff --git a/ide/src/base-ui/utils/ExcelFormater.ts b/ide/src/base-ui/utils/ExcelFormater.ts index 707607182771cd8ee12cce756889ea64ef6fcebc..d05a55676b2b23bc46fad6933012cf9f9fd0650b 100644 --- a/ide/src/base-ui/utils/ExcelFormater.ts +++ b/ide/src/base-ui/utils/ExcelFormater.ts @@ -13,7 +13,7 @@ * limitations under the License. */ -const htmlStr = (): any => { +const htmlStr = (): unknown => { const html_start = ''; return { uri: 'data:application/vnd.ms-excel;base64,', @@ -63,36 +63,36 @@ Content-Type: text/xml; charset="utf-8" export class ExcelFormater { static tmplCellXML = '{data}'; - static base64 = function (s: any): string { + static base64 = function (s: unknown): string {//@ts-ignore return window.btoa(unescape(encodeURIComponent(s))); }; - static format(s: any, c: any): string { - return s.replace(/{(\w+)}/g, function (m: any, p: any) { + static format(s: unknown, c: unknown): string {//@ts-ignore + return s.replace(/{(\w+)}/g, function (m: unknown, p: unknown) {//@ts-ignore return c[p]; }); } - static createExcelRow(columns: any[], data: any): string { + static createExcelRow(columns: unknown[], data: unknown): string { let rowsXML = ''; rowsXML += ''; - for (let k = 0; k < columns.length; k++) { - let dataIndex = columns[k].getAttribute('data-index'); + for (let k = 0; k < columns.length; k++) {//@ts-ignore + let dataIndex = columns[k].getAttribute('data-index');//@ts-ignore let columnName = columns[k].getAttribute('title'); if (columnName === '') { columnName = dataIndex; } let ctx = { attributeStyleID: '', - nameType: 'String', + nameType: 'String',//@ts-ignore data: data ? data[dataIndex] || '' : columnName, attributeFormula: '', }; rowsXML += this.format(this.tmplCellXML, ctx); } - rowsXML += ''; - if (data && data.children !== undefined && data.children.length > 0) { - data.children.forEach((child: any) => { + rowsXML += '';//@ts-ignore + if (data && data.children !== undefined && data.children.length > 0) {//@ts-ignore + data.children.forEach((child: unknown) => { rowsXML += this.createExcelRow(columns, child); }); } @@ -108,26 +108,26 @@ export class ExcelFormater { })}`; } - static testExport(dataSource: { columns: any[]; tables: any[]; sheetName: string }[], fileName: string): void { + static testExport(dataSource: { columns: unknown[]; tables: unknown[]; sheetName: string }[], fileName: string): void { this.tablesToHtmlExcelMultipleSheet(dataSource, fileName); } static tablesToHtmlExcelMultipleSheet( - dataSource: { columns: any[]; tables: any[]; sheetName: string }[], + dataSource: { columns: unknown[]; tables: unknown[]; sheetName: string }[], fileName: string, image?: string ): void { - let sheets: any[] = []; + let sheets: unknown[] = []; dataSource.forEach((data): void => { sheets.push(this.createTableData(data.columns, data.tables, image)); }); this.tablesToExcelTestSheet(sheets, fileName, dataSource); } - static createTableData(columns: any[], dataSource: any[], image?: string): string { + static createTableData(columns: unknown[], dataSource: unknown[], image?: string): string { let tableData = ''; - let columnDatas = columns.map((column) => { - let dataIndex = column.getAttribute('data-index'); + let columnDatas = columns.map((column) => {//@ts-ignore + let dataIndex = column.getAttribute('data-index');//@ts-ignore let columnName = column.getAttribute('title'); if (columnName === '') { columnName = dataIndex; @@ -153,7 +153,7 @@ export class ExcelFormater { return tableData; } - static createTHead(columns: any[]): string { + static createTHead(columns: unknown[]): string { let header = ''; columns.forEach((column) => { header += `${column}`; @@ -162,28 +162,28 @@ export class ExcelFormater { return header; } - static createTableRow(columns: any[], data: any, image?: any): string { - let childrenData = ''; - if (data.children !== undefined) { - data.children.forEach((child: any) => { + static createTableRow(columns: unknown[], data: unknown, image?: unknown): string { + let childrenData = '';//@ts-ignore + if (data.children !== undefined) {//@ts-ignore + data.children.forEach((child: unknown) => { if (child) { childrenData += this.createTableRow(columns, child); } }); } return `${columns - .map((column) => { + .map((column) => {//@ts-ignore return `${(data[column] + '').replace('μ', 'u')}` || ''; }) .join('')}${image ? `
` : ''}${childrenData}`; } static tablesToExcelTestSheet( - tables: any[], + tables: unknown[], filename: string, - dataSource: { columns: any[]; tables: any[]; sheetName: string }[] + dataSource: { columns: unknown[]; tables: unknown[]; sheetName: string }[] ): void { - const html_start = ''; + const html_start = '';//@ts-ignore let { uri, template_ExcelWorksheet, template_ListWorksheet, template_WorkBook } = htmlStr(); let template_HTMLWorksheet = ` diff --git a/ide/src/base-ui/utils/Template.ts b/ide/src/base-ui/utils/Template.ts index 844b22983330c969d799a4f16ef23aa6bddeba0f..cee7e587b6e15c5705c7485ca1c6c9fb1deae57c 100644 --- a/ide/src/base-ui/utils/Template.ts +++ b/ide/src/base-ui/utils/Template.ts @@ -16,10 +16,10 @@ const propsMap: string[] = ['disabled', 'hidden', 'checked', 'selected', 'required', 'open', 'readonly']; declare interface HTMLTemplateElement { - render(data: any): any; + render(data: unknown): unknown; } - -(HTMLTemplateElement as any).prototype.render = function (data: any): HTMLElement { +//@ts-ignore +(HTMLTemplateElement as unknown).prototype.render = function (data: unknown): HTMLElement { if (!this.$fragment) { const rule = this.getAttribute('rule') || 'v-'; this.$fragment = this.cloneNode(true); @@ -28,9 +28,9 @@ declare interface HTMLTemplateElement { // v-for Loop rendering //
=> ${ list.map(function(item,index){ return '
' }).join('') } const repeatEls = this.$fragment.content.querySelectorAll(`[\\${rule}for]`); - repeatEls.forEach((el: any) => { + repeatEls.forEach((el: unknown) => {//@ts-ignore const strFor = el.getAttribute(`${rule}for`); - const { isArray, items, params } = parseFor(strFor); + const { isArray, items, params } = parseFor(strFor);//@ts-ignore el.before( '${Object.entries(' + items + @@ -39,25 +39,25 @@ declare interface HTMLTemplateElement { params[2] || 'index' }` + '){ return `' - ); - el.removeAttribute(`${rule}for`); + );//@ts-ignore + el.removeAttribute(`${rule}for`);//@ts-ignore el.after('`}).join("")}'); }); // v-if Conditional rendering //
=> ${ if ? '
' : '' } const ifEls = this.$fragment.content.querySelectorAll(`[\\${rule}if]`); - ifEls.forEach((el: any) => { - const ifs = el.getAttribute(`${rule}if`); - el.before('${' + ifs + '?`'); - el.removeAttribute(`${rule}if`); + ifEls.forEach((el: unknown) => {//@ts-ignore + const ifs = el.getAttribute(`${rule}if`);//@ts-ignore + el.before('${' + ifs + '?`');//@ts-ignore + el.removeAttribute(`${rule}if`);//@ts-ignore el.after('`:``}'); }); // fragment aa => aa const fragments = this.$fragment.content.querySelectorAll('fragment,block'); - fragments.forEach((el: any) => { - el.after(el.innerHTML); + fragments.forEach((el: unknown) => {//@ts-ignore + el.after(el.innerHTML);//@ts-ignore el.parentNode.removeChild(el); }); } @@ -65,10 +65,11 @@ declare interface HTMLTemplateElement { // props const propsEls = this.fragment.content.querySelectorAll(`[${propsMap.join('],[')}]`); - propsEls.forEach((el: any) => { - propsMap.forEach((props: any) => { + propsEls.forEach((el: unknown) => { + propsMap.forEach((props: unknown) => { // If these attribute values are false, they are removed directly - if (el.getAttribute(props) === 'false') { + //@ts-ignore + if (el.getAttribute(props) === 'false') {//@ts-ignore el.removeAttribute(props); } }); @@ -87,18 +88,19 @@ function parseFor(strFor: String): { isArray: boolean, items: string | String, p } // String to template string -(String as any).prototype.interpolate = function (params: any): Function { +//@ts-ignore +(String as unknown).prototype.interpolate = function (params: unknown): Function {//@ts-ignore const names = Object.keys(params); // @ts-ignore const vals = Object.values(params); - const str = this.replace(/\{\{([^\}]+)\}\}/g, (all: any, s: any) => `\${${s}}`); + const str = this.replace(/\{\{([^\}]+)\}\}/g, (all: unknown, s: unknown) => `\${${s}}`); return new Function(...names, `return \`${escape2Html(str)}\`;`)(...vals); }; // HTML Character inversion meaning < => < function escape2Html(str: string): string { - let arrEntities: any = { lt: '<', gt: '>', nbsp: ' ', amp: '&', quot: '"' }; - return str.replace(/&(lt|gt|nbsp|amp|quot);/gi, function (all, t) { + let arrEntities: unknown = { lt: '<', gt: '>', nbsp: ' ', amp: '&', quot: '"' }; + return str.replace(/&(lt|gt|nbsp|amp|quot);/gi, function (all, t) {//@ts-ignore return arrEntities[t]; }); } diff --git a/ide/src/command/Cmd.ts b/ide/src/command/Cmd.ts index b92a7b6f678307c31f2158d655f622a381d21d9e..c3e760f13a18a48a368a9bde08f65cfd0b3341df 100644 --- a/ide/src/command/Cmd.ts +++ b/ide/src/command/Cmd.ts @@ -18,7 +18,7 @@ import { CmdConstant } from './CmdConstant'; import { HdcDeviceManager } from '../hdc/HdcDeviceManager'; export class Cmd { - static CmdSendPostUtils(uri: string, callback: Function, requestData: any): void { + static CmdSendPostUtils(uri: string, callback: Function, requestData: unknown): void { // @ts-ignore if (window.useWb) { return; diff --git a/ide/src/js-heap/LoadDatabase.ts b/ide/src/js-heap/LoadDatabase.ts index 4a123652ba72f1be274dc9d109d820a1412dea7d..46b447e7e9142abedee002e8812efb476d18a45a 100644 --- a/ide/src/js-heap/LoadDatabase.ts +++ b/ide/src/js-heap/LoadDatabase.ts @@ -73,17 +73,22 @@ export class LoadDatabase { private async loadInfo(file: FileStruct): Promise { let result = await queryHeapInfo(file.id); for (let row of result) { + //@ts-ignore if (row.key.includes('types')) { continue; } + //@ts-ignore switch (row.key) { case 'node_count': + //@ts-ignore file.snapshotStruct.nodeCount = row.intValue; break; case 'edge_count': + //@ts-ignore file.snapshotStruct.edgeCount = row.intValue; break; case 'trace_function_count': + //@ts-ignore file.snapshotStruct.functionCount = row.intValue; break; } @@ -129,19 +134,31 @@ export class LoadDatabase { let strings = file.snapshotStruct.strings; for (let row of result) { let traceNode = new AllocationFunction( + //@ts-ignore row.id, + //@ts-ignore strings[row.name], + //@ts-ignore strings[row.scriptName], + //@ts-ignore row.scriptId, + //@ts-ignore row.line, + //@ts-ignore row.column, + //@ts-ignore row.count, + //@ts-ignore row.size, + //@ts-ignore row.liveCount, + //@ts-ignore row.liveSize, false ); + //@ts-ignore traceNode.parentsId.push(row.parentId); + //@ts-ignore traceNode.functionIndex = row.functionInfoIndex; traceNode.fileId = file.id; heapTraceNode.push(traceNode); @@ -155,6 +172,7 @@ export class LoadDatabase { private async loadStrings(file: FileStruct): Promise { let result = await queryHeapString(file.id); for (let data of result) { + //@ts-ignore file.snapshotStruct.strings.push(data.string); } } diff --git a/ide/src/js-heap/logic/HeapLoader.ts b/ide/src/js-heap/logic/HeapLoader.ts index e4049054883cd48ec6c455bc3367b0c3b744070a..bc0a538833b7e2bba39c4d145783421e1c998a29 100644 --- a/ide/src/js-heap/logic/HeapLoader.ts +++ b/ide/src/js-heap/logic/HeapLoader.ts @@ -410,7 +410,7 @@ export class HeapLoader { changed = false; for (let orderIdx = rootOrderedIdx - 1; orderIdx >= 0; --orderIdx) { // If dominator of the entry has already been set to root, - // then it can't propagate any further. + // then it can't propagate unknown further. if (affected[orderIdx] === 0) { continue; } @@ -991,19 +991,20 @@ export class HeapLoader { } private findParentsFunc(childNodes: ConstructorItem[], clickNode: ConstructorItem): void { - function findParents(clickNode: any, parents: any): any { + function findParents(clickNode: unknown, parents: unknown): unknown {//@ts-ignore if (!clickNode.parent) { return parents; } // add the parent of the current node to the result array + //@ts-ignore parents.push(clickNode); - for (let childNode of childNodes) { + for (let childNode of childNodes) {//@ts-ignore for (let heapParent of parents) { if (heapParent.id === childNode!.id) { childNode.hasNext = false; } } - } + }//@ts-ignore return findParents(clickNode.parent, parents); } findParents(clickNode, []); @@ -1069,7 +1070,7 @@ export class HeapLoader { } } - retains.sort(function (a: any, b: any) { + retains.sort(function (a: unknown, b: unknown) {//@ts-ignore return a.distance - b.distance; }); diff --git a/ide/src/log/Log.ts b/ide/src/log/Log.ts index 529ec150b7daf5c02f7189bfa9cd953a7903c515..c9946130fc0769699182cc09f27fef6606a177ca 100644 --- a/ide/src/log/Log.ts +++ b/ide/src/log/Log.ts @@ -23,22 +23,22 @@ export enum LogLevel { ALL = Number.MIN_VALUE, } -export const error = (message?: any, ...optionalParams: any[]): void => { +export const error = (message?: unknown, ...optionalParams: unknown[]): void => { SpLog.logger(LogLevel.ERROR, message, ...optionalParams); }; -export const warn = (message?: any, ...optionalParams: any[]): void => { +export const warn = (message?: unknown, ...optionalParams: unknown[]): void => { SpLog.logger(LogLevel.WARN, message, ...optionalParams); }; -export const info = (message?: any, ...optionalParams: any[]): void => { +export const info = (message?: unknown, ...optionalParams: unknown[]): void => { SpLog.logger(LogLevel.INFO, message, ...optionalParams); }; -export const debug = (message?: any, ...optionalParams: any[]): void => { +export const debug = (message?: unknown, ...optionalParams: unknown[]): void => { SpLog.logger(LogLevel.DEBUG, message, ...optionalParams); }; -export const trace = (message?: any, ...optionalParams: any[]): void => { +export const trace = (message?: unknown, ...optionalParams: unknown[]): void => { SpLog.logger(LogLevel.TRACE, message, ...optionalParams); }; -export const log = (message?: any): void => { +export const log = (message?: unknown): void => { SpLog.logger(LogLevel.TRACE, message); }; @@ -58,7 +58,7 @@ class SpLog { return timeString; } - public static logger(logLevel: LogLevel, message?: any, ...optionalParams: any[]): void { + public static logger(logLevel: LogLevel, message?: unknown, ...optionalParams: unknown[]): void { if (logLevel >= SpLog.nowLogLevel) { switch (logLevel) { case LogLevel.ERROR: diff --git a/ide/src/trace/component/SpQuerySQL.ts b/ide/src/trace/component/SpQuerySQL.ts index 824e1c2ecab2a2b822182ffaa8433833de8751df..b888b11769e49594b5a02b3cce7ae8c3f705717b 100644 --- a/ide/src/trace/component/SpQuerySQL.ts +++ b/ide/src/trace/component/SpQuerySQL.ts @@ -171,6 +171,7 @@ export class SpQuerySQL extends BaseElement { queryCustomizeSelect(sql).then((resultList): void => { if (resultList && resultList.length > 0) { this.statDataArray = resultList; + //@ts-ignore this.keyList = Object.keys(resultList[0]); this.querySize!.textContent = `Query result - ${this.statDataArray.length} counts.` + `(${sql})`; this.initDataElement(); diff --git a/ide/src/trace/component/SpSystemTrace.init.ts b/ide/src/trace/component/SpSystemTrace.init.ts index 683ea0b6b01a2c54a09a09886cbafb254b553e21..60cbf75922e79de8b0686383ce7ac6a2b142e5b9 100644 --- a/ide/src/trace/component/SpSystemTrace.init.ts +++ b/ide/src/trace/component/SpSystemTrace.init.ts @@ -461,7 +461,9 @@ function selectHandlerRows(sp: SpSystemTrace, rows: Array>): void selection.diskIOipids ).then((res) => { if (res.length > 0) { + //@ts-ignore selection.fsCount = res[0].fsCount; + //@ts-ignore selection.vmCount = res[0].vmCount; } return new Promise((resolve) => resolve(1)); diff --git a/ide/src/trace/component/chart/SpAbilityMonitorChart.ts b/ide/src/trace/component/chart/SpAbilityMonitorChart.ts index fb18372bbd325d9a47067f215fe9eb556419c113..909043664ae0ab749e012d0cdcaa2e0a3b1a18c0 100644 --- a/ide/src/trace/component/chart/SpAbilityMonitorChart.ts +++ b/ide/src/trace/component/chart/SpAbilityMonitorChart.ts @@ -161,14 +161,15 @@ export class SpAbilityMonitorChart { let hasTotal = false; let hasUserLoad = false; let hasSystemLoad = false; + //@ts-ignore let userLoad = cpuMaxData[0].userLoad; if (userLoad > 0) { hasUserLoad = true; - } + }//@ts-ignore let systemLoad = cpuMaxData[0].systemLoad; if (systemLoad > 0) { hasSystemLoad = true; - } + }//@ts-ignore let totalLoad = cpuMaxData[0].totalLoad; if (totalLoad > 0) { hasTotal = true; @@ -359,6 +360,7 @@ export class SpAbilityMonitorChart { parent: TraceRow ): Promise { let memoryTotal = await queryMemoryMaxData('sys.mem.total'); + //@ts-ignore let memoryTotalId = memoryTotal[0].filter_id; memoryUsedRow.rowParentId = key; @@ -421,6 +423,7 @@ export class SpAbilityMonitorChart { ): Promise { let cached = await queryMemoryMaxData('sys.mem.cached'); + //@ts-ignore let cachedId = cached[0].filter_id; cachedFilesRow.rowParentId = key; cachedFilesRow.rowHidden = !parent.expansion; @@ -480,6 +483,7 @@ export class SpAbilityMonitorChart { parent: TraceRow ): Promise { let swap = await queryMemoryMaxData('sys.mem.swap.total'); + //@ts-ignore let swapId = swap[0].filter_id; compressedRow.rowParentId = key; compressedRow.rowHidden = !parent.expansion; diff --git a/ide/src/trace/component/chart/SpAllAppStartups.ts b/ide/src/trace/component/chart/SpAllAppStartups.ts index c2c562d12bf51d4881297c99bf57ca34e94341c7..37f3e9b08c3cfa1009f89b0b3f98ed3e8102e2da 100644 --- a/ide/src/trace/component/chart/SpAllAppStartups.ts +++ b/ide/src/trace/component/chart/SpAllAppStartups.ts @@ -47,7 +47,7 @@ export class SpAllAppStartupsChart { let tmpSingleApp: any[] = await queryProcessStartup(SpAllAppStartupsChart.APP_STARTUP_PID_ARR[i]!); if (tmpSingleApp.length === 8) { let avilSingleName = await querySingleAppStartupsName(SpAllAppStartupsChart.APP_STARTUP_PID_ARR[i]!); - SpAllAppStartupsChart.allAppStartupsAva.push(SpAllAppStartupsChart.APP_STARTUP_PID_ARR[i]); + SpAllAppStartupsChart.allAppStartupsAva.push(SpAllAppStartupsChart.APP_STARTUP_PID_ARR[i]);//@ts-ignore SpAllAppStartupsChart.AllAppStartupsNameArr.push(avilSingleName![0].name); } } diff --git a/ide/src/trace/component/chart/SpArkTsChart.ts b/ide/src/trace/component/chart/SpArkTsChart.ts index 1a39e0c25350a1b01b770675062f13067fabb6de..fd2385da3e9b0f5b8eacdcc97c2f3d2da654dc0f 100644 --- a/ide/src/trace/component/chart/SpArkTsChart.ts +++ b/ide/src/trace/component/chart/SpArkTsChart.ts @@ -109,6 +109,7 @@ export class SpArkTsChart implements ParseListener { let jsMemory = await queryJsMemoryData(); if (jsMemory.length > 0 || jsCpu.length > 0) { this.folderRow = TraceRow.skeleton(); + //@ts-ignore this.process = jsConfig[0].pid; this.folderRow.rowId = this.process; this.folderRow.rowType = TraceRow.ROW_TYPE_ARK_TS; @@ -122,18 +123,21 @@ export class SpArkTsChart implements ParseListener { this.folderRow.supplierFrame = (): Promise> => new Promise>((resolve) => resolve([])); this.folderThreadHandler(); - this.trace.rowsEL?.appendChild(this.folderRow); + this.trace.rowsEL?.appendChild(this.folderRow);//@ts-ignore if (this.folderRow && jsConfig[0].type !== -1 && jsMemory.length > 0) { this.folderRow.addTemplateTypes('Memory'); - if (jsConfig[0].type === TYPE_SNAPSHOT) { + if (//@ts-ignore + jsConfig[0].type === TYPE_SNAPSHOT) { // snapshot await this.initSnapshotChart(); - } else if (jsConfig[0].type === TYPE_TIMELINE) { + } else if (//@ts-ignore + jsConfig[0].type === TYPE_TIMELINE) { // timeline await this.initTimelineChart(); } } - if (this.folderRow && jsConfig[0].enableCpuProfiler === 1 && jsCpu.length > 0) { + if (//@ts-ignore + this.folderRow && jsConfig[0].enableCpuProfiler === 1 && jsCpu.length > 0) { await this.initJsCpuChart(); } if ((this.heapSnapshotRow || this.heapTimelineRow) && jsMemory.length > 0) { diff --git a/ide/src/trace/component/chart/SpBpftraceChart.ts b/ide/src/trace/component/chart/SpBpftraceChart.ts index 2edf39402e991422ae0f8d038b7ee925ec1cd0e7..4e15025039c051312226a7f05d1e590f88c32fa6 100644 --- a/ide/src/trace/component/chart/SpBpftraceChart.ts +++ b/ide/src/trace/component/chart/SpBpftraceChart.ts @@ -30,6 +30,7 @@ export class SpBpftraceChart { async init(file: File | null) { if (!file) { let startTime = await queryStartTime(); + //@ts-ignore let folder = await this.initSample(startTime[0].start_ts, file); this.trace.rowsEL?.appendChild(folder); } else { diff --git a/ide/src/trace/component/chart/SpChartManager.ts b/ide/src/trace/component/chart/SpChartManager.ts index fa6f60e2766e455635247dc71129b7b34131c7d6..b2ad3af0d41e721ab02b715c3b8d1c55c19943b6 100644 --- a/ide/src/trace/component/chart/SpChartManager.ts +++ b/ide/src/trace/component/chart/SpChartManager.ts @@ -117,7 +117,7 @@ export class SpChartManager { let appStartUpPids = await queryAppStartupProcessIds(); appStartUpPids.forEach((it) => SpChartManager.APP_STARTUP_PID_ARR.push(it.pid)); } - await this.initTraceConfig(); + await this.initTraceConfig();//@ts-ignore dict.map((d) => SpSystemTrace.DATA_DICT.set(d['id'], d['data'])); await this.cacheDataDictToWorker(); SpSystemTrace.DATA_TASK_POOL_CALLSTACK.clear(); @@ -125,16 +125,17 @@ export class SpChartManager { taskPoolCallStack.map((d) => SpSystemTrace.DATA_TASK_POOL_CALLSTACK.set(d.id, d)); progress('time range', 65); await this.initTotalTime(); - let ptArr = await queryThreadAndProcessName(); + let ptArr = await queryThreadAndProcessName();//@ts-ignore this.handleProcessThread(ptArr); info('initData timerShaftEL Data initialized'); const range = await queryTraceRange(); + //@ts-ignore this.tranceRange = range[0]; } async initCpu(progress: Function): Promise { progress('cpu', 70); - let count = await sliceSender(); + let count = await sliceSender();//@ts-ignore await this.cpu.init(count.cpu); info('initData cpu Data initialized'); if (FlagsConfig.getFlagsConfigEnableStatus('Bpftrace')) { @@ -203,7 +204,7 @@ export class SpChartManager { async importSoFileUpdate(): Promise { SpSystemTrace.DATA_DICT.clear(); - let dict = await queryDataDICT(); + let dict = await queryDataDICT();//@ts-ignore dict.map((d) => SpSystemTrace.DATA_DICT.set(d['id'], d['data'])); await this.cacheDataDictToWorker(); await perfDataQuery.initPerfCache(); diff --git a/ide/src/trace/component/chart/SpCpuChart.ts b/ide/src/trace/component/chart/SpCpuChart.ts index aeb6de6a54052598e46208003988e1abd43bfa1f..119cf927db3ef93eae031ae9480c2b0c5ac9f1e5 100644 --- a/ide/src/trace/component/chart/SpCpuChart.ts +++ b/ide/src/trace/component/chart/SpCpuChart.ts @@ -81,6 +81,7 @@ export class SpCpuChart { let array = await queryCpuMax(); let cpuCountResult = await queryCpuCount(); if (cpuCountResult && cpuCountResult.length > 0 && cpuCountResult[0]) { + //@ts-ignore (window as any).cpuCount = cpuCountResult[0].cpuCount; } else { (window as any).cpuCount = 0; @@ -88,7 +89,7 @@ export class SpCpuChart { let cpuSchedSlice = await queryCpuSchedSlice(); this.initSchedSliceData(cpuSchedSlice); info('Cpu trace row data size is: ', array.length); - if (array && array.length > 0 && array[0]) { + if (array && array.length > 0 && array[0]) {//@ts-ignore let cpuMax = array[0].cpu; CpuStruct.cpuCount = cpuMax + 1; for (let i1 = 0; i1 < CpuStruct.cpuCount; i1++) { diff --git a/ide/src/trace/component/chart/SpEBPFChart.ts b/ide/src/trace/component/chart/SpEBPFChart.ts index 90abc0692b52192c6aeb20a9f8378d15100df8ac..c724d5bf32bf4937b416b0891cd28a983eee4d8e 100644 --- a/ide/src/trace/component/chart/SpEBPFChart.ts +++ b/ide/src/trace/component/chart/SpEBPFChart.ts @@ -35,8 +35,11 @@ export class SpEBPFChart { async init(): Promise { let sys = await hasFileSysData(); if (sys.length > 0) { + //@ts-ignore let fsCount = sys[0]['fsCount'] ?? 0; + //@ts-ignore let vmCount = sys[0]['vmCount'] ?? 0; + //@ts-ignore let ioCount = sys[0]['ioCount'] ?? 0; if (sys && sys.length > 0 && (fsCount > 0 || vmCount > 0 || ioCount > 0)) { let folder = await this.initFolder(); diff --git a/ide/src/trace/component/chart/SpFrameTimeChart.ts b/ide/src/trace/component/chart/SpFrameTimeChart.ts index 5dac424685aa009b87f7069dbd2abae355708068..cb70a30062b59c7cc1c96c1ec0c9142d6b8f8b6f 100644 --- a/ide/src/trace/component/chart/SpFrameTimeChart.ts +++ b/ide/src/trace/component/chart/SpFrameTimeChart.ts @@ -60,8 +60,8 @@ export class SpFrameTimeChart { this.idToProcessNameMap.clear(); if (frameTimeData.length > 0) { let processNamesArray = await queryAllProcessNames(); - processNamesArray.forEach((it) => { - this.pidToProcessNameMap.set(it.pid, it.name); + processNamesArray.forEach((it) => {//@ts-ignore + this.pidToProcessNameMap.set(it.pid, it.name);//@ts-ignore this.idToProcessNameMap.set(it.id, it.name); }); let frameTimeLineRow: TraceRow = await this.initFrameTimeLine(); diff --git a/ide/src/trace/component/chart/SpFreqChart.ts b/ide/src/trace/component/chart/SpFreqChart.ts index 453846f5d40c83fdfaad47616cff5504ce0ab134..3a190f969bf2577cbca9f6653d7fa8cf992a58dc 100644 --- a/ide/src/trace/component/chart/SpFreqChart.ts +++ b/ide/src/trace/component/chart/SpFreqChart.ts @@ -47,6 +47,7 @@ export class SpFreqChart { async init(): Promise { let freqList = await queryCpuFreq(); let cpuStateFilterIds = await queryCpuStateFilter(); + //@ts-ignore this.trace.stateRowsId = cpuStateFilterIds; let cpuFreqLimits = await getCpuLimitFreqId(); let cpuFreqLimitsMax = await getCpuLimitFreqMax(cpuFreqLimits.map((limit) => limit.maxFilterId).join(',')); @@ -90,8 +91,8 @@ export class SpFreqChart { } async addFreqRows(freqList: Array): Promise { - let freqMaxList = await queryCpuMaxFreq(); - CpuFreqStruct.maxFreq = freqMaxList[0].maxFreq; + let freqMaxList = await queryCpuMaxFreq();//@ts-ignore + CpuFreqStruct.maxFreq = freqMaxList[0].maxFreq;//@ts-ignore let maxFreqObj = Utils.getFrequencyWithUnit(freqMaxList[0].maxFreq); CpuFreqStruct.maxFreq = maxFreqObj.maxFreq; CpuFreqStruct.maxFreqName = maxFreqObj.maxFreqName; diff --git a/ide/src/trace/component/chart/SpNativeMemoryChart.ts b/ide/src/trace/component/chart/SpNativeMemoryChart.ts index cf2d836a80782654d2b8266cbaa709153d882bc2..70a31fd01caae4329b0d7c0e78f1690e11e1e172 100644 --- a/ide/src/trace/component/chart/SpNativeMemoryChart.ts +++ b/ide/src/trace/component/chart/SpNativeMemoryChart.ts @@ -202,9 +202,11 @@ export class SpNativeMemoryChart { let queryTime = await queryNativeMemoryRealTime(); let bootTime = await queryBootTime(); if (queryTime.length > 0) { + //@ts-ignore isRealtime = queryTime[0].clock_name === 'realtime'; } if (bootTime.length > 0 && isRealtime) { + //@ts-ignore realTimeDif = queryTime[0].ts - bootTime[0].ts; SpNativeMemoryChart.REAL_TIME_DIF = realTimeDif; } diff --git a/ide/src/trace/component/chart/SpProcessChart.ts b/ide/src/trace/component/chart/SpProcessChart.ts index a8c77ecd4fa033738f779f4b410348afc80ec449..5237bd280b255da281c52da1e09f21f1378f3aad 100644 --- a/ide/src/trace/component/chart/SpProcessChart.ts +++ b/ide/src/trace/component/chart/SpProcessChart.ts @@ -81,6 +81,7 @@ export class SpProcessChart { initAsyncFuncData = async (traceRange: { startTs: number; endTs: number }): Promise => { const funcNamesArray = await queryAllFuncNames(); funcNamesArray.forEach((it) => { + //@ts-ignore this.funcNameMap.set(it.id, it.name); }); let asyncFuncList: any[] = await queryProcessAsyncFunc(traceRange); @@ -227,24 +228,26 @@ export class SpProcessChart { let soInitNamesArray = await queryAllSoInitNames(); soInitNamesArray.forEach((it) => { + //@ts-ignore this.soInitNameMap.set(it.id, it.name); }); let processSrcSliceArray = await queryAllSrcSlices(); processSrcSliceArray.forEach((it) => { + //@ts-ignore this.processSrcSliceMap.set(it.id, it.src); }); let threadFuncMaxDepthArray = await getMaxDepthByTid(); info('Gets the maximum tier per thread , tid and maxDepth'); - threadFuncMaxDepthArray.forEach((it) => { + threadFuncMaxDepthArray.forEach((it) => {//@ts-ignore this.threadFuncMaxDepthMap.set(`${it.ipid}-${it.tid}`, it.maxDepth); }); info('convert tid and maxDepth array to map'); let pidCountArray = await queryProcessContentCount(); info('fetch per process pid,switch_count,thread_count,slice_count,mem_count'); - pidCountArray.forEach((it) => { - this.processThreadDataCountMap.set(it.pid, it.switch_count); - this.processThreadCountMap.set(it.pid, it.thread_count); - this.processFuncDataCountMap.set(it.pid, it.slice_count); + pidCountArray.forEach((it) => {//@ts-ignore + this.processThreadDataCountMap.set(it.pid, it.switch_count);//@ts-ignore + this.processThreadCountMap.set(it.pid, it.thread_count);//@ts-ignore + this.processFuncDataCountMap.set(it.pid, it.slice_count);//@ts-ignore this.processMemDataCountMap.set(it.pid, it.mem_count); }); this.processMem = await queryProcessMem(); diff --git a/ide/src/trace/component/chart/SpSdkChart.ts b/ide/src/trace/component/chart/SpSdkChart.ts index 3fc0d9ca5638f21af0a688268a171cc54abd1fb8..132a242adef416823ee9c7af46dd0fceeaf6442e 100644 --- a/ide/src/trace/component/chart/SpSdkChart.ts +++ b/ide/src/trace/component/chart/SpSdkChart.ts @@ -174,6 +174,7 @@ export class SpSdkChart { return; } let res = await queryStartTime(); + //@ts-ignore let startTime = res[0].start_ts; let tablesMap = this.parseJson(startTime, configMap); let tableKeys = tablesMap.keys(); @@ -259,6 +260,7 @@ export class SpSdkChart { CounterStruct.hoverCounterStruct = traceRow.getHoverStruct(); }; let maxList = await queryCounterMax(sqlMap.maxSql, result.counter_id, componentId); + //@ts-ignore let maxCounter = maxList[0].max_value; traceRow.onThreadHandler = (useCache: boolean): void => { let context: CanvasRenderingContext2D; diff --git a/ide/src/trace/component/chart/SpVirtualMemChart.ts b/ide/src/trace/component/chart/SpVirtualMemChart.ts index 3f5c765a5ab90cdba0030efa0de1c7e80291a248..d87990a7aba2c176cc59df56c3e15f52736ac075 100644 --- a/ide/src/trace/component/chart/SpVirtualMemChart.ts +++ b/ide/src/trace/component/chart/SpVirtualMemChart.ts @@ -63,6 +63,7 @@ export class SpVirtualMemChart { vmFolder.canvasRestore(this.trace.canvasPanelCtx!, this.trace); }; this.trace.rowsEL?.appendChild(vmFolder); + //@ts-ignore array.forEach((it) => this.initVirtualMemoryRow(vmFolder, it.id, it.name)); } diff --git a/ide/src/trace/component/chart/SpVmTrackerChart.ts b/ide/src/trace/component/chart/SpVmTrackerChart.ts index ab8c8bd4f2db56c20f38ac8bbf132d0748e1d8c9..43bbe367233731fb13e23b472c6205243b9d09f6 100644 --- a/ide/src/trace/component/chart/SpVmTrackerChart.ts +++ b/ide/src/trace/component/chart/SpVmTrackerChart.ts @@ -89,6 +89,7 @@ export class VmTrackerChart { } const isExistsShm = await queryisExistsShmData(this.memoryConfig.iPid); const isExistsDma = await queryisExistsDmaData(this.memoryConfig.iPid); + //@ts-ignore if (isExistsShm[0].data_exists) { await this.initShmRows(); } @@ -330,10 +331,10 @@ export class VmTrackerChart { private initPurgeableVM = async (): Promise => { let time = new Date().getTime(); const isExistsPurgeableTotal = await queryisExistsPurgeableData(this.memoryConfig.iPid, false); - const isExistsPurgeablePin = await queryisExistsPurgeableData(this.memoryConfig.iPid, true); + const isExistsPurgeablePin = await queryisExistsPurgeableData(this.memoryConfig.iPid, true);//@ts-ignore if (isExistsPurgeableTotal[0].data_exists) { await this.initPurgeableTotal(); - } + }//@ts-ignore if (isExistsPurgeablePin[0].data_exists) { await this.initPurgeablePin(); } diff --git a/ide/src/trace/component/schedulingAnalysis/Top20FrequencyThread.ts b/ide/src/trace/component/schedulingAnalysis/Top20FrequencyThread.ts index 6e690334cb0f0668effea69546712e6191693baf..94544f2193b50d3ced5ba2c368824b986708c3e7 100644 --- a/ide/src/trace/component/schedulingAnalysis/Top20FrequencyThread.ts +++ b/ide/src/trace/component/schedulingAnalysis/Top20FrequencyThread.ts @@ -124,10 +124,10 @@ export class Top20FrequencyThread extends BaseElement { } this.traceChange = false; this.frequencyThreadProgress!.loading = true; - if (Top20FrequencyThread.threads === undefined) { + if (Top20FrequencyThread.threads === undefined) {//@ts-ignore Top20FrequencyThread.threads = (await queryThreads()) || []; this.nodata!.noData = Top20FrequencyThread.threads === undefined || Top20FrequencyThread.threads.length === 0; - this.threadSelect!.innerHTML = ''; + this.threadSelect!.innerHTML = '';//@ts-ignore let threads = Top20FrequencyThread.threads.map((it) => { let option = new LitSelectOption(); option.setAttribute('value', `${it.tid}`); @@ -135,9 +135,9 @@ export class Top20FrequencyThread extends BaseElement { return option; }); this.threadSelect!.append(...threads); - this.threadSelect?.initOptions(); - this.threadSelect!.value = `${Top20FrequencyThread.threads[0].tid}`; - this.currentThread!.textContent = Top20FrequencyThread.threads[0].name; + this.threadSelect?.initOptions();//@ts-ignore + this.threadSelect!.value = `${Top20FrequencyThread.threads[0].tid}`;//@ts-ignore + this.currentThread!.textContent = Top20FrequencyThread.threads[0].name;//@ts-ignore this.currentTid = Top20FrequencyThread.threads[0].tid; this.queryData(); } diff --git a/ide/src/trace/component/trace/sheet/TabPaneCurrentSelection.ts b/ide/src/trace/component/trace/sheet/TabPaneCurrentSelection.ts index 39443acc262baec6441485d8d79101c7189810ec..14af1b0d4c67bfeedd796d14a6629c5563a4232a 100644 --- a/ide/src/trace/component/trace/sheet/TabPaneCurrentSelection.ts +++ b/ide/src/trace/component/trace/sheet/TabPaneCurrentSelection.ts @@ -443,6 +443,7 @@ export class TabPaneCurrentSelection extends BaseElement { let argsBinderRes = result[1]; let asyncBinderStract: any; if (asyncBinderRes.length > 0) { + //@ts-ignore asyncBinderRes[0].type = TraceRow.ROW_TYPE_FUNC; asyncBinderStract = asyncBinderRes[0]; } @@ -891,6 +892,7 @@ export class TabPaneCurrentSelection extends BaseElement { if (data.frame_type === 'render_service') { queryGpuDur(data.id!).then((it) => { if (it.length > 0) { + //@ts-ignore list.push({ name: 'Gpu Duration', value: getTimeString(it[0].gpu_dur) }); } }); @@ -913,6 +915,7 @@ export class TabPaneCurrentSelection extends BaseElement { if (it.length > 0) { list.push({ name: 'Gpu Duration', + //@ts-ignore value: getTimeString(it[0].gpu_dur), }); } @@ -1234,6 +1237,7 @@ export class TabPaneCurrentSelection extends BaseElement { useEnd ? recordNs + data.startTs! + data.dur! : recordNs + data.startTs! ).then((result) => { if (result.length > 0) { + //@ts-ignore let pt: { pid: number; tid: number; @@ -1306,6 +1310,7 @@ export class TabPaneCurrentSelection extends BaseElement { let recordNs: number = (window as any).recordStartNS; queryThreadByItid(data.itid!, recordNs + data.startTs!).then((result) => { if (result.length > 0) { + //@ts-ignore let pt: { pid: number; tid: number; @@ -1676,8 +1681,9 @@ export class TabPaneCurrentSelection extends BaseElement { priority: 0, isSelected: false, }; + //@ts-ignore let find = res.find((re) => re.cpu === it.cpu && re.itid === it.itid && re.ts === it.ts); - if (find) { + if (find) {//@ts-ignore wake.priority = find.priority; } maxDuration = Math.max(maxDuration, it.dur!); diff --git a/ide/src/trace/component/trace/sheet/ability/TabPaneMemoryAbility.ts b/ide/src/trace/component/trace/sheet/ability/TabPaneMemoryAbility.ts index 0e4c6eb7fc9ec098b69e13e890c5005ce2b85ef6..abcb6d5acf51c4ceef424a28497b0308ba91df60 100644 --- a/ide/src/trace/component/trace/sheet/ability/TabPaneMemoryAbility.ts +++ b/ide/src/trace/component/trace/sheet/ability/TabPaneMemoryAbility.ts @@ -107,6 +107,7 @@ export class TabPaneMemoryAbility extends BaseElement { queryDataByDB(val: SelectionParam | any): void { queryStartTime().then((res): void => { + //@ts-ignore let startTime = res[0].start_ts; getTabMemoryAbilityData(val.leftNs + startTime, val.rightNs + startTime).then((items): void => { log(`getTabMemoryAbilityData result size : ${ items.length}`); diff --git a/ide/src/trace/component/trace/sheet/ability/TabPanePurgPinComparisonAbility.ts b/ide/src/trace/component/trace/sheet/ability/TabPanePurgPinComparisonAbility.ts index 6bfdf9608f6d24f7f77a4f0293fb4c665a6d96af..d2c92ab3360de51dd8b11b3e3a179da1f2b8a507 100644 --- a/ide/src/trace/component/trace/sheet/ability/TabPanePurgPinComparisonAbility.ts +++ b/ide/src/trace/component/trace/sheet/ability/TabPanePurgPinComparisonAbility.ts @@ -101,11 +101,12 @@ export class TabPanePurgPinComparisonAbility extends BaseElement { // 点击的 await querySysPurgeableSelectionTab(baseTime, true).then(async (results) => { for (let i = 0; i < results.length; i++) { + //@ts-ignore baseArr.push(new CompareStruct(results[i].name, results[i].value)); } // 被比较的 await querySysPurgeableSelectionTab(targetTime, true).then((results) => { - for (let i = 0; i < results.length; i++) { + for (let i = 0; i < results.length; i++) {//@ts-ignore targetArr.push(new CompareStruct(results[i].name, results[i].value)); } let compareData = compare(baseArr, targetArr); diff --git a/ide/src/trace/component/trace/sheet/ability/TabPanePurgPinSelection.ts b/ide/src/trace/component/trace/sheet/ability/TabPanePurgPinSelection.ts index d880510d653dcd7a01241c2cafa3e6e005d6b462..69194f8bab5ddec1d46632f4db87c2bf09082541 100644 --- a/ide/src/trace/component/trace/sheet/ability/TabPanePurgPinSelection.ts +++ b/ide/src/trace/component/trace/sheet/ability/TabPanePurgPinSelection.ts @@ -44,6 +44,7 @@ export class TabPanePurgPinSelection extends BaseElement { value: (startNs + (window as any).recordStartNS) / 1000000000, }); for (let i = 0; i < purgePinSelectResults.length; i++) { + //@ts-ignore purgePinSelectResults[i].value = Utils.getBinaryByteWithUnit(purgePinSelectResults[i].value); this.purgeableSelectionSource.push(purgePinSelectResults[i]); this.purgeableSelectionTable!.recycleDataSource = this.purgeableSelectionSource; @@ -57,7 +58,7 @@ export class TabPanePurgPinSelection extends BaseElement { name: 'TimeStamp(Absolute)', value: (startNs + (window as any).recordStartNS) / 1000000000, }); - for (let i = 0; i < results.length; i++) { + for (let i = 0; i < results.length; i++) {//@ts-ignore results[i].value = Utils.getBinaryByteWithUnit(results[i].value); this.purgeableSelectionSource.push(results[i]); this.purgeableSelectionTable!.recycleDataSource = this.purgeableSelectionSource; diff --git a/ide/src/trace/component/trace/sheet/ability/TabPanePurgTotalComparisonAbility.ts b/ide/src/trace/component/trace/sheet/ability/TabPanePurgTotalComparisonAbility.ts index 85423ad6ba98add5890775ab0d8c0ab93e01b3df..59ca7dbf0c0d6b64b180327b8b7d90471e1a9585 100644 --- a/ide/src/trace/component/trace/sheet/ability/TabPanePurgTotalComparisonAbility.ts +++ b/ide/src/trace/component/trace/sheet/ability/TabPanePurgTotalComparisonAbility.ts @@ -102,11 +102,12 @@ export class TabPanePurgTotalComparisonAbility extends BaseElement { // 点击的 await querySysPurgeableSelectionTab(baseTime).then(async (results): Promise => { for (let i = 0; i < results.length; i++) { + //@ts-ignore baseArr.push(new CompareStruct(results[i].name, results[i].value)); } // 被比较的 await querySysPurgeableSelectionTab(targetTime).then((results): void => { - for (let i = 0; i < results.length; i++) { + for (let i = 0; i < results.length; i++) { //@ts-ignore targetArr.push(new CompareStruct(results[i].name, results[i].value)); } let compareData = compare(baseArr, targetArr); diff --git a/ide/src/trace/component/trace/sheet/ability/TabPanePurgTotalSelection.ts b/ide/src/trace/component/trace/sheet/ability/TabPanePurgTotalSelection.ts index cb85d9ba51dd8bea09b4c37acee5b0f76b02362d..996f5de483f882fb347ad909b1f4489a02b3936f 100644 --- a/ide/src/trace/component/trace/sheet/ability/TabPanePurgTotalSelection.ts +++ b/ide/src/trace/component/trace/sheet/ability/TabPanePurgTotalSelection.ts @@ -45,6 +45,7 @@ export class TabPanePurgTotalSelection extends BaseElement { value: (startNs + (window as any).recordStartNS) / 1000000000, }); for (let i = 0; i < purgeTotalSelectResults.length; i++) { + //@ts-ignore purgeTotalSelectResults[i].value = Utils.getBinaryByteWithUnit(purgeTotalSelectResults[i].value); this.purgeableSelectionSource.push(purgeTotalSelectResults[i]); } @@ -60,7 +61,7 @@ export class TabPanePurgTotalSelection extends BaseElement { name: 'TimeStamp(Absolute)', value: (startNs + (window as any).recordStartNS) / 1000000000, }); - for (let i = 0; i < results.length; i++) { + for (let i = 0; i < results.length; i++) {//@ts-ignore results[i].value = Utils.getBinaryByteWithUnit(results[i].value); this.purgeableSelectionSource.push(results[i]); } diff --git a/ide/src/trace/component/trace/sheet/cpu/TabPaneCounterSample.ts b/ide/src/trace/component/trace/sheet/cpu/TabPaneCounterSample.ts index 4415d98e1cf2fa9bbc505a205cf135b3347a3a7c..b3835cb3f7d0927d005e05d9d87af527000f03c4 100644 --- a/ide/src/trace/component/trace/sheet/cpu/TabPaneCounterSample.ts +++ b/ide/src/trace/component/trace/sheet/cpu/TabPaneCounterSample.ts @@ -147,6 +147,7 @@ export class TabPaneCounterSample extends BaseElement { let sampleMap = new Map(); counterSampleParam.cpuStateFilterIds.forEach((a: number): void => { this.getInitTime( + //@ts-ignore result.filter((f) => f.filterId === a), sampleMap, counterSampleParam diff --git a/ide/src/trace/component/trace/sheet/cpu/TabPaneCpuByProcess.ts b/ide/src/trace/component/trace/sheet/cpu/TabPaneCpuByProcess.ts index fad8b626b30b3149196a67b4d35e6a2e2c5da422..85d4f6bb756f1fa5209b9b0fdda1f1724115dd07 100644 --- a/ide/src/trace/component/trace/sheet/cpu/TabPaneCpuByProcess.ts +++ b/ide/src/trace/component/trace/sheet/cpu/TabPaneCpuByProcess.ts @@ -50,18 +50,19 @@ export class TabPaneCpuByProcess extends BaseElement { let sumWall = 0.0; let sumOcc = 0; for (let e of result) { - let process = Utils.PROCESS_MAP.get(e.pid); - e.process = !process || process.length === 0 ? '[NULL]' : process; - sumWall += e.wallDuration; - sumOcc += e.occurrences; - e.wallDuration = parseFloat((e.wallDuration / 1000000.0).toFixed(5)); + //@ts-ignore + let process = Utils.PROCESS_MAP.get(e.pid);//@ts-ignore + e.process = !process || process.length === 0 ? '[NULL]' : process;//@ts-ignore + sumWall += e.wallDuration;//@ts-ignore + sumOcc += e.occurrences;//@ts-ignore + e.wallDuration = parseFloat((e.wallDuration / 1000000.0).toFixed(5));//@ts-ignore e.avgDuration = parseFloat((parseFloat(e.avgDuration) / 1000000.0).toFixed(5)).toString(); } let count = new SelectionData(); count.process = ' '; count.wallDuration = parseFloat((sumWall / 1000000.0).toFixed(5)); count.occurrences = sumOcc; - result.splice(0, 0, count); + result.splice(0, 0, count);//@ts-ignore this.cpuByProcessSource = result; this.cpuByProcessTbl!.recycleDataSource = result; } else { diff --git a/ide/src/trace/component/trace/sheet/cpu/TabPaneFrequencySample.ts b/ide/src/trace/component/trace/sheet/cpu/TabPaneFrequencySample.ts index 8efc4f40f961d4d0d19320a363e378fecdb0d8b8..89a91f4b330b7a3242da4d90783a96ff836c33f8 100644 --- a/ide/src/trace/component/trace/sheet/cpu/TabPaneFrequencySample.ts +++ b/ide/src/trace/component/trace/sheet/cpu/TabPaneFrequencySample.ts @@ -161,6 +161,7 @@ export class TabPaneFrequencySample extends BaseElement { this.freqResult = result; frqSampleParam.cpuFreqFilterIds.forEach((a: number): void => { this.getInitTime( + //@ts-ignore result.filter((f) => f.filterId === a), sampleMap, frqSampleParam diff --git a/ide/src/trace/component/trace/sheet/cpu/TabPanePTS.ts b/ide/src/trace/component/trace/sheet/cpu/TabPanePTS.ts index c9a87eab5f29edf3f4c6dca98e2bedf606e548e3..404c77a913a8087e25344d2e7bf7fdbebffd9c74 100644 --- a/ide/src/trace/component/trace/sheet/cpu/TabPanePTS.ts +++ b/ide/src/trace/component/trace/sheet/cpu/TabPanePTS.ts @@ -48,6 +48,7 @@ export class TabPanePTS extends BaseElement { sliceSPTSender(ptsLeftNs, ptsRightNs, cpus, 'spt-getPTS').then((res): void => { this.ptsTbl!.loading = false; this.ptsTbl!.recycleDataSource = res; + //@ts-ignore this.theadClick(res); }); } diff --git a/ide/src/trace/component/trace/sheet/cpu/TabPaneSPT.ts b/ide/src/trace/component/trace/sheet/cpu/TabPaneSPT.ts index d634c510d7f31a88f903b9f2ca90ebc1d9405c53..a0f0a7f069c0362ab7fdde7cb521fcc31948a255 100644 --- a/ide/src/trace/component/trace/sheet/cpu/TabPaneSPT.ts +++ b/ide/src/trace/component/trace/sheet/cpu/TabPaneSPT.ts @@ -57,6 +57,7 @@ export class TabPaneSPT extends BaseElement { sliceSPTSender(leftNs, rightNs, cpus, 'spt-getSPT').then((res): void => { this.sptTbl!.loading = false; this.sptTbl!.recycleDataSource = res; + //@ts-ignore this.theadClick(res); }); } diff --git a/ide/src/trace/component/trace/sheet/cpu/TabPaneSchedPriority.ts b/ide/src/trace/component/trace/sheet/cpu/TabPaneSchedPriority.ts index dbeb8e2322f423e8978590591a2299e23c3c6136..caed36a34fb9ed3e870b43354609b87f3a6ddb28 100644 --- a/ide/src/trace/component/trace/sheet/cpu/TabPaneSchedPriority.ts +++ b/ide/src/trace/component/trace/sheet/cpu/TabPaneSchedPriority.ts @@ -90,10 +90,10 @@ export class TabPaneSchedPriority extends BaseElement { // thread_state表中runnable数据的Map const runnableMap = new Map(); sliceSPTSender(sptParam.leftNs, sptParam.rightNs, [], 'spt-getCpuPriorityByTime').then((res): void => { - for (const item of res) { - if (['R', 'R+'].includes(item.state)) { + for (const item of res) {//@ts-ignore + if (['R', 'R+'].includes(item.state)) {//@ts-ignore runnableMap.set(`${item.id}_${item.startTime + item.dur}`, item); - } + }//@ts-ignore if (item.cpu === null || !sptParam.cpus.includes(item.cpu)) { continue; } diff --git a/ide/src/trace/component/trace/sheet/freq/TabPaneCpuFreqLimits.ts b/ide/src/trace/component/trace/sheet/freq/TabPaneCpuFreqLimits.ts index c56f785c894d3a22b6ff82967f2143345b5da8ff..760e0f54d0a61083112e9561683be62193ebdb63 100644 --- a/ide/src/trace/component/trace/sheet/freq/TabPaneCpuFreqLimits.ts +++ b/ide/src/trace/component/trace/sheet/freq/TabPaneCpuFreqLimits.ts @@ -41,10 +41,13 @@ export class TabPaneCpuFreqLimits extends BaseElement { let list: any[] = []; getCpuLimitFreqBoxSelect(cpuFreqLimitSelection.cpuFreqLimit, cpuFreqLimitSelection.rightNs).then((res) => { for (let it of res) { + //@ts-ignore if (!it.dur || it.startNs + it.dur > cpuFreqLimitSelection.rightNs) { + //@ts-ignore it.dur = (cpuFreqLimitSelection.rightNs || 0) - (it.startNs || 0); } } + //@ts-ignore this.formatData(res, cpuFreqLimitSelection.leftNs, cpuFreqLimitSelection.rightNs); }); } diff --git a/ide/src/trace/component/trace/sheet/irq/TabPaneIrqCounter.ts b/ide/src/trace/component/trace/sheet/irq/TabPaneIrqCounter.ts index d3eb7a02e6c318453661d874a608ccb2371dd768..0737f1ef75c86f9509d61c48529e2b3cffc4919a 100644 --- a/ide/src/trace/component/trace/sheet/irq/TabPaneIrqCounter.ts +++ b/ide/src/trace/component/trace/sheet/irq/TabPaneIrqCounter.ts @@ -43,12 +43,19 @@ export class TabPaneIrqCounter extends BaseElement { resArr.forEach((res) => { res.forEach((item) => { let selectData = new SelectionData(); + //@ts-ignore selectData.name = item.irqName; + //@ts-ignore selectData.count = item.count; + //@ts-ignore selectData.wallDuration = item.wallDuration; + //@ts-ignore selectData.wallDurationFormat = (item.wallDuration / 1000).toFixed(2); + //@ts-ignore selectData.maxDuration = item.wallDuration; + //@ts-ignore selectData.maxDurationFormat = (item.maxDuration / 1000).toFixed(2); + //@ts-ignore selectData.avgDuration = (item.avgDuration / 1000).toFixed(2); dataSource.push(selectData); }); diff --git a/ide/src/trace/component/trace/sheet/process/TabPaneCounter.ts b/ide/src/trace/component/trace/sheet/process/TabPaneCounter.ts index 1163d8a08fe80f9c82f37e9b4d498bb01e2a6e2c..0fe86a1a2974941c185ca186599539faf5951d65 100644 --- a/ide/src/trace/component/trace/sheet/process/TabPaneCounter.ts +++ b/ide/src/trace/component/trace/sheet/process/TabPaneCounter.ts @@ -39,8 +39,10 @@ export class TabPaneCounter extends BaseElement { this.counterTbl!.loading = true; getTabCounters(counterParam.processTrackIds, counterParam.virtualTrackIds, counterParam.rightNs).then((result) => { this.counterTbl!.loading = false; + //@ts-ignore if (result !== null && result.length > 0) { let dataSource: Array = []; + //@ts-ignore let collect = this.groupByTrackIdToMap(result); let sumCount = 0; for (let key of collect.keys()) { diff --git a/ide/src/trace/component/trace/sheet/process/TabPaneSlices.ts b/ide/src/trace/component/trace/sheet/process/TabPaneSlices.ts index cd3e2c466e79724efe5411fd9054c0107553f193..5bc5ee19c5f6a77ef7dd372e069d3ff78d461c15 100644 --- a/ide/src/trace/component/trace/sheet/process/TabPaneSlices.ts +++ b/ide/src/trace/component/trace/sheet/process/TabPaneSlices.ts @@ -32,24 +32,24 @@ export class TabPaneSlices extends BaseElement { private slicesSource: Array = []; private currentSelectionParam: SelectionParam | undefined; - set data(slicesParam: SelectionParam | any) { + set data(slicesParam: SelectionParam | unknown) { if (this.currentSelectionParam === slicesParam) { return; - } + }//@ts-ignore this.currentSelectionParam = slicesParam; - this.slicesRange!.textContent = `Selected range: ${parseFloat( + this.slicesRange!.textContent = `Selected range: ${parseFloat(//@ts-ignore ((slicesParam.rightNs - slicesParam.leftNs) / 1000000.0).toFixed(5) )} ms`; let asyncNames: Array = []; - let asyncPid: Array = []; - slicesParam.funAsync.forEach((it: any) => { - asyncNames.push(it.name); + let asyncPid: Array = [];//@ts-ignore + slicesParam.funAsync.forEach((it: unknown) => {//@ts-ignore + asyncNames.push(it.name);//@ts-ignore asyncPid.push(it.pid); }); this.slicesTbl!.loading = true; let filterNameEL: HTMLInputElement | undefined | null = - this.shadowRoot?.querySelector('#filterName'); - getTabSlicesAsyncFunc(asyncNames, asyncPid, slicesParam.leftNs, slicesParam.rightNs).then((res) => { + this.shadowRoot?.querySelector('#filterName');//@ts-ignore + getTabSlicesAsyncFunc(asyncNames, asyncPid, slicesParam.leftNs, slicesParam.rightNs).then((res) => {//@ts-ignore getTabSlices(slicesParam.funTids, slicesParam.processIds, slicesParam.leftNs, slicesParam.rightNs).then( (res2) => { this.slicesTbl!.loading = false; @@ -58,10 +58,15 @@ export class TabPaneSlices extends BaseElement { let sumWall = 0.0; let sumOcc = 0; for (let processSliceItem of processSlicesResult) { + //@ts-ignore processSliceItem.name = processSliceItem.name === null ? '' : processSliceItem.name; + //@ts-ignore sumWall += processSliceItem.wallDuration; + //@ts-ignore sumOcc += processSliceItem.occurrences; + //@ts-ignore processSliceItem.wallDuration = parseFloat((processSliceItem.wallDuration / 1000000.0).toFixed(5)); + //@ts-ignore processSliceItem.avgDuration = parseFloat((processSliceItem.avgDuration / 1000000.0).toFixed(5)); } let count = new SelectionData(); @@ -72,6 +77,7 @@ export class TabPaneSlices extends BaseElement { if (filterNameEL && filterNameEL.value.trim() !== '') { this.findName(filterNameEL.value); } else { + //@ts-ignore this.slicesSource = processSlicesResult; this.slicesTbl!.recycleDataSource = processSlicesResult; } @@ -129,8 +135,8 @@ export class TabPaneSlices extends BaseElement { return; } // @ts-ignore - search.list = mixedResults.filter((item) => item.funName === data.name); - const sliceRowList: Array> = []; + search.list = mixedResults.filter((item) => item.funName === data.name);//@ts-ignore + const sliceRowList: Array> = []; // 框选的slice泳道 for (let row of spSystemTrace.rangeSelect.rangeTraceRow!) { if (row.rowType === 'func') { @@ -152,9 +158,9 @@ export class TabPaneSlices extends BaseElement { } private slicesTblFreshSearchSelect( - search: LitSearch, - sliceRowList: Array>, - data: any, + search: LitSearch,//@ts-ignore + sliceRowList: Array>, + data: unknown, spSystemTrace: SpSystemTrace ): void { let input = search.shadowRoot?.querySelector('input') as HTMLInputElement; @@ -185,7 +191,7 @@ export class TabPaneSlices extends BaseElement { if (rangeSelectList.length === 0) { return; - } + }//@ts-ignore input.value = data.name; search.list = rangeSelectList; search.total = search.list.length; @@ -235,7 +241,7 @@ export class TabPaneSlices extends BaseElement { `; } - sortByColumn(slicesDetail: any): void { + sortByColumn(slicesDetail: unknown): void { // @ts-ignore function compare(property, slicesSort, type) { return function (slicesLeftData: SelectionData, slicesRightData: SelectionData) { @@ -264,10 +270,10 @@ export class TabPaneSlices extends BaseElement { } }; } - - if (slicesDetail.key === 'name') { +//@ts-ignore + if (slicesDetail.key === 'name') {//@ts-ignore this.slicesSource.sort(compare(slicesDetail.key, slicesDetail.sort, 'string')); - } else { + } else {//@ts-ignore this.slicesSource.sort(compare(slicesDetail.key, slicesDetail.sort, 'number')); } this.slicesTbl!.recycleDataSource = this.slicesSource; diff --git a/ide/src/trace/component/trace/sheet/process/TabPaneStartup.ts b/ide/src/trace/component/trace/sheet/process/TabPaneStartup.ts index 2f7237125766c8adc52bb73d60ee3133a547c3b3..2a7b59a35498616c22562945ff7eec9fad37e8d6 100644 --- a/ide/src/trace/component/trace/sheet/process/TabPaneStartup.ts +++ b/ide/src/trace/component/trace/sheet/process/TabPaneStartup.ts @@ -38,18 +38,18 @@ export class TabPaneStartup extends BaseElement { private startupSource: Array = []; private currentSelectionParam: SelectionParam | undefined; - set data(startupParam: SelectionParam | any) { + set data(startupParam: SelectionParam | unknown) { if (this.currentSelectionParam === startupParam) { return; - } + }// @ts-ignore this.currentSelectionParam = startupParam; //@ts-ignore - this.startupTbl?.shadowRoot?.querySelector('.table')?.style?.height = `${this.parentElement!.clientHeight - 45}px`; + this.startupTbl?.shadowRoot?.querySelector('.table')?.style?.height = `${this.parentElement!.clientHeight - 45}px`;// @ts-ignore this.range!.textContent = `Selected range: ${((startupParam.rightNs - startupParam.leftNs) / 1000000.0).toFixed( 5 )} ms`; - this.startupTbl!.loading = true; - getTabStartups(startupParam.processIds, startupParam.leftNs, startupParam.rightNs).then( + this.startupTbl!.loading = true;// @ts-ignore + getTabStartups(startupParam.processIds, startupParam.leftNs, startupParam.rightNs).then(//@ts-ignore (result: AppStartupStruct[]) => { this.processTabStartups(result); } @@ -116,7 +116,7 @@ export class TabPaneStartup extends BaseElement { initElements(): void { this.startupTbl = this.shadowRoot?.querySelector('#tb-startup'); this.range = this.shadowRoot?.querySelector('#startup-time-range'); - this.startupTbl!.addEventListener('column-click', (evt: any) => { + this.startupTbl!.addEventListener('column-click', (evt: unknown) => {// @ts-ignore this.sortByColumn(evt.detail); }); } @@ -161,10 +161,10 @@ export class TabPaneStartup extends BaseElement { `; } - sortByColumn(startupDetail: any): void { - let compare = (startupA: StartupTreeItem, startupB: StartupTreeItem): number => { + sortByColumn(startupDetail: unknown): void { + let compare = (startupA: StartupTreeItem, startupB: StartupTreeItem): number => {// @ts-ignore if (startupDetail.sort === 0) { - return startupA.step - startupB.step; + return startupA.step - startupB.step;// @ts-ignore } else if (startupDetail.sort === 1) { return startupA.dur - startupB.dur; } else { diff --git a/ide/src/trace/component/trace/sheet/process/TabPaneStaticInit.ts b/ide/src/trace/component/trace/sheet/process/TabPaneStaticInit.ts index d60edb9473960df2119997f6e27514ca9f83ceb6..0f64d603673bb6112d41d0f43309d7f0dcef7985 100644 --- a/ide/src/trace/component/trace/sheet/process/TabPaneStaticInit.ts +++ b/ide/src/trace/component/trace/sheet/process/TabPaneStaticInit.ts @@ -37,9 +37,9 @@ export class TabPaneStaticInit extends BaseElement { private staticinitSource: Array = []; private currentSelectionParam: SelectionParam | undefined; - set data(staticinitParam: SelectionParam | any) { - this.initStaticTblStyle(staticinitParam); - getTabStaticInit(staticinitParam.processIds, staticinitParam.leftNs, staticinitParam.rightNs).then( + set data(staticinitParam: SelectionParam | unknown) { + this.initStaticTblStyle(staticinitParam);// @ts-ignore + getTabStaticInit(staticinitParam.processIds, staticinitParam.leftNs, staticinitParam.rightNs).then(//@ts-ignore (result: SoStruct[]) => { this.staticinitTbl!.loading = false; if (result !== null && result.length > 0) { @@ -86,15 +86,15 @@ export class TabPaneStaticInit extends BaseElement { ); } - private initStaticTblStyle(staticParam: SelectionParam | any): void { + private initStaticTblStyle(staticParam: SelectionParam | unknown): void { if (this.currentSelectionParam === staticParam) { return; - } + }// @ts-ignore this.currentSelectionParam = staticParam; //@ts-ignore this.staticinitTbl?.shadowRoot?.querySelector('.table')?.style?.height = `${ this.parentElement!.clientHeight - 45 - }px`; + }px`;// @ts-ignore this.range!.textContent = `Selected range: ${((staticParam.rightNs - staticParam.leftNs) / 1000000.0).toFixed( 5 )} ms`; @@ -104,7 +104,7 @@ export class TabPaneStaticInit extends BaseElement { initElements(): void { this.staticinitTbl = this.shadowRoot?.querySelector('#tb-staticinit'); this.range = this.shadowRoot?.querySelector('#staticinit-time-range'); - this.staticinitTbl!.addEventListener('column-click', (evt: any) => { + this.staticinitTbl!.addEventListener('column-click', (evt: unknown) => {// @ts-ignore this.sortByColumn(evt.detail); }); } @@ -146,8 +146,8 @@ export class TabPaneStaticInit extends BaseElement { `; } - sortByColumn(soDetail: any): void { - let compare = (soA: SoTreeItem, soB: SoTreeItem): number => + sortByColumn(soDetail: unknown): void { + let compare = (soA: SoTreeItem, soB: SoTreeItem): number =>// @ts-ignore soDetail.sort === 1 ? soA.dur - soB.dur : soB.dur - soA.dur; this.staticinitSource.forEach((it) => it.children?.sort(compare)); this.staticinitSource.sort(compare); diff --git a/ide/src/trace/component/trace/sheet/schedswitch/TabPaneSchedSwitch.ts b/ide/src/trace/component/trace/sheet/schedswitch/TabPaneSchedSwitch.ts index dd2c000567c0e3c11ab4c02e7e9bf4c106ac9434..7a79bf03e67b0579a2d7bc75c14492390c7b731e 100644 --- a/ide/src/trace/component/trace/sheet/schedswitch/TabPaneSchedSwitch.ts +++ b/ide/src/trace/component/trace/sheet/schedswitch/TabPaneSchedSwitch.ts @@ -286,12 +286,12 @@ export class TabPaneSchedSwitch extends BaseElement { } if (btnHtml === SINGLE_BUTTON_TEXT) { this.isSingleBtnColor(true); - this.isLoopBtnColor(false); + this.isLoopBtnColor(false);//@ts-ignore funcData = await querySingleCutData(threadFunName, threadId, leftStartNs, rightEndNs); } if (btnHtml === LOOP_BUTTON_TEXT) { this.isSingleBtnColor(false); - this.isLoopBtnColor(true); + this.isLoopBtnColor(true);//@ts-ignore funcData = await queryLoopCutData(threadFunName, threadId, leftStartNs, rightEndNs); } //获取到线程数据和方法数据,处理周期 @@ -317,7 +317,7 @@ export class TabPaneSchedSwitch extends BaseElement { let threadSourceData: Array = []; let leftStartNs: number = threadParam!.leftNs + threadParam!.recordStartNs; let rightEndNs: number = threadParam!.rightNs + threadParam!.recordStartNs; - let processIds: Array = [...new Set(threadParam!.processIds)]; + let processIds: Array = [...new Set(threadParam!.processIds)];//@ts-ignore let res: Array = await querySchedThreadStates( processIds, threadParam!.threadIds, diff --git a/ide/src/trace/component/trace/sheet/sdk/TabPaneSdkCounter.ts b/ide/src/trace/component/trace/sheet/sdk/TabPaneSdkCounter.ts index e266a4d6b0f278a90a93193768b77d3bbe78f2a9..619a37b15b80477511facde81a104dd1fa25ed0d 100644 --- a/ide/src/trace/component/trace/sheet/sdk/TabPaneSdkCounter.ts +++ b/ide/src/trace/component/trace/sheet/sdk/TabPaneSdkCounter.ts @@ -102,6 +102,7 @@ export class TabPaneSdkCounter extends BaseElement { queryDataByDB(sdkVal: SelectionParam | any): void { queryStartTime().then((res) => { + //@ts-ignore let startTime = res[0].start_ts; this.parseJson(SpSystemTrace.SDK_CONFIG_MAP); let counters: Array = []; @@ -115,6 +116,7 @@ export class TabPaneSdkCounter extends BaseElement { let sqlObj = this.sqlMap.get(componentId); let sql = sqlObj.TabCounterLeftData; getTabSdkCounterLeftData(sql, sdkVal.leftNs + startTime, counters, componentId).then((res) => { + //@ts-ignore let leftTime = res[res.length - 1].max_value - startTime; let sql = sqlObj.TabCounterData; getTabSdkCounterData(sql, startTime, leftTime, sdkVal.rightNs, counters, componentId).then((counterItem) => { diff --git a/ide/src/trace/component/trace/sheet/sdk/TabPaneSdkSlice.ts b/ide/src/trace/component/trace/sheet/sdk/TabPaneSdkSlice.ts index bd0f75e02a44b65a703bf0ec1e49f671c1b5284a..7468b787a974ca3a80ad545598e7253508895e79 100644 --- a/ide/src/trace/component/trace/sheet/sdk/TabPaneSdkSlice.ts +++ b/ide/src/trace/component/trace/sheet/sdk/TabPaneSdkSlice.ts @@ -30,13 +30,13 @@ export class TabPaneSdkSlice extends BaseElement { private tblSdkSlice: LitTable | null | undefined; private sdkSliceRange: HTMLLabelElement | null | undefined; private keyList: Array | undefined; - private statDataArray: any = []; - private columnMap: any = {}; + private statDataArray: unknown = []; + private columnMap: unknown = {}; private sqlMap: Map = new Map(); - set data(valSdkSlice: SelectionParam | any) { + set data(valSdkSlice: SelectionParam | unknown) { let millisecond = 1000_000; - this.sdkSliceRange!.textContent = + this.sdkSliceRange!.textContent =//@ts-ignore 'Selected range: ' + ((valSdkSlice.rightNs - valSdkSlice.leftNs) / millisecond).toFixed(5) + ' ms'; this.queryDataByDB(valSdkSlice); } @@ -55,13 +55,13 @@ export class TabPaneSdkSlice extends BaseElement { resizeObserver(this.parentElement!, this.tblSdkSlice!); } - queryDataByDB(sdkSliceVal: SelectionParam | any): void { + queryDataByDB(sdkSliceVal: SelectionParam | unknown): void { queryTotalTime().then((res) => { let startTime = res[0].recordStartNS; let totalTime = res[0].total; let componentId: number = -1; - let slices: Array = []; - for (let index = 0; index < sdkSliceVal.sdkSliceIds.length; index++) { + let slices: Array = [];//@ts-ignore + for (let index = 0; index < sdkSliceVal.sdkSliceIds.length; index++) {//@ts-ignore let values = sdkSliceVal.sdkSliceIds[index].split('-'); let value = values[0]; componentId = Number(values[1]); @@ -71,7 +71,7 @@ export class TabPaneSdkSlice extends BaseElement { let sql = this.sqlMap.get(componentId); if (sql === undefined) { return; - } + }//@ts-ignore getTabSdkSliceData(sql, startTime, sdkSliceVal.leftNs, sdkSliceVal.rightNs, slices, componentId).then( (sliceItem) => { this.keyList = []; @@ -84,7 +84,7 @@ export class TabPaneSdkSlice extends BaseElement { } this.initDataElement(); - setTimeout(() => { + setTimeout(() => {//@ts-ignore this.tblSdkSlice!.recycleDataSource = this.statDataArray; new ResizeObserver(() => { if (this.parentElement?.clientHeight !== 0) { @@ -98,7 +98,7 @@ export class TabPaneSdkSlice extends BaseElement { }); } - initSdkSliceData(sliceItem: SdkSliceSummary[], totalTime: number, sdkSliceVal: SelectionParam | any): void { + initSdkSliceData(sliceItem: SdkSliceSummary[], totalTime: number, sdkSliceVal: SelectionParam | unknown): void { for (let sliceItemIndex = 0; sliceItemIndex < sliceItem.length; sliceItemIndex++) { const dataResult = sliceItem[sliceItemIndex]; let keys = Object.keys(dataResult); @@ -110,18 +110,17 @@ export class TabPaneSdkSlice extends BaseElement { if (this.keyList!.indexOf(sliceKey) <= -1) { this.keyList!.push(sliceKey); } - let sliceValue = values[sliceKeyIndex]; + let sliceValue = values[sliceKeyIndex];//@ts-ignore if (this.columnMap[sliceKey] === 'TimeStamp') { - sliceValue = Utils.getTimeString(Number(sliceValue)); + sliceValue = Utils.getTimeString(Number(sliceValue));//@ts-ignore } else if (this.columnMap[sliceKey] === 'ClockTime') { - sliceValue = Utils.getTimeStampHMS(Number(sliceValue)); + sliceValue = Utils.getTimeStampHMS(Number(sliceValue));//@ts-ignore } else if (this.columnMap[sliceKey] === 'RangTime') { - sliceValue = Utils.getDurString(Number(sliceValue)); + sliceValue = Utils.getDurString(Number(sliceValue));//@ts-ignore } else if (this.columnMap[sliceKey] === 'PercentType') { - sliceValue = sliceValue + '%'; + sliceValue = sliceValue + '%';//@ts-ignore } else if (this.columnMap[sliceKey] === 'CurrencyType') { - // @ts-ignore - sliceValue = sliceValue.toString().replace(/\B(?=(\d{3})+$)/g, ','); + sliceValue = sliceValue.toString().replace(/\B(?=(\d{3})+$)/g, ',');//@ts-ignore } else if (this.columnMap[sliceKey] === 'FIXED') { sliceValue = sliceValue.toFixed(2); } @@ -144,12 +143,12 @@ export class TabPaneSdkSlice extends BaseElement { ) { sliceParseData.end_ts = totalTime; } - if ( + if (//@ts-ignore this.isDateIntersection(sdkSliceVal.leftNs, sdkSliceVal.rightNs, sliceParseData.start_ts, sliceParseData.end_ts) - ) { + ) {//@ts-ignore this.statDataArray.push(sliceParseData); } - } + }//@ts-ignore this.tblSdkSlice!.recycleDataSource = this.statDataArray; } @@ -173,8 +172,8 @@ export class TabPaneSdkSlice extends BaseElement { parseJson(map: Map): string { for (let [key, value] of map) { - let sliceConfigObj: any = value; - if (sliceConfigObj !== undefined) { + let sliceConfigObj: unknown = value; + if (sliceConfigObj !== undefined) {//@ts-ignore let { jsonConfig } = sliceConfigObj; let { tableConfig } = JSON.parse(jsonConfig); if (tableConfig) { @@ -183,7 +182,7 @@ export class TabPaneSdkSlice extends BaseElement { let type = TabUtil.getTableType(showType); if (type === 'slice') { let sliceSelectSql = 'select '; - for (let { column, displayName, showType: columnShowType } of showType.columns) { + for (let { column, displayName, showType: columnShowType } of showType.columns) {//@ts-ignore this.columnMap[column] = displayName; if (columnShowType.includes(3)) { switch (column) { @@ -256,7 +255,7 @@ export class TabPaneSdkSlice extends BaseElement { `; } - sortByColumn(sliceDetail: any): void { + sortByColumn(sliceDetail: unknown): void { // @ts-ignore function compare(property, sliceSort, type) { return function (aSdkSlice: SelectionData, bSdkSlice: SelectionData) { @@ -283,16 +282,16 @@ export class TabPaneSdkSlice extends BaseElement { } }; } - - if (sliceDetail.key.indexOf('name') !== -1) { +//@ts-ignore + if (sliceDetail.key.indexOf('name') !== -1) {//@ts-ignore this.statDataArray.sort(compare(sliceDetail.key, sliceDetail.sort, 'string')); - } else { + } else {//@ts-ignore this.statDataArray.sort(compare(sliceDetail.key, sliceDetail.sort, 'number')); - } + }//@ts-ignore this.tblSdkSlice!.recycleDataSource = this.statDataArray; } - private getInnerTableName(showType: any): string { + private getInnerTableName(showType: unknown): string {//@ts-ignore let inner = showType.inner; if (inner !== null) { return inner.tableName; @@ -300,7 +299,7 @@ export class TabPaneSdkSlice extends BaseElement { return ''; } - filterSliceItem(sliceItem: Array, totalTime: number, sdkSliceVal: any): void { + filterSliceItem(sliceItem: Array, totalTime: number, sdkSliceVal: unknown): void { this.tblSdkSlice!.innerHTML = ''; this.statDataArray = []; if (sliceItem.length > 0) { @@ -332,23 +331,23 @@ export class TabPaneSdkSlice extends BaseElement { sliceParseData.end_ts = totalTime; } if ( - this.isDateIntersection( - sdkSliceVal.leftNs, + this.isDateIntersection(//@ts-ignore + sdkSliceVal.leftNs,//@ts-ignore sdkSliceVal.rightNs, sliceParseData.start_ts, sliceParseData.end_ts ) - ) { + ) {//@ts-ignore this.statDataArray.push(sliceParseData); } - }); + });//@ts-ignore this.tblSdkSlice!.recycleDataSource = this.statDataArray; } else { this.tblSdkSlice!.recycleDataSource = []; } } - getFormattedSliceValue(sliceKey: string, sliceValue: any): any { + getFormattedSliceValue(sliceKey: string, sliceValue: unknown): unknown {//@ts-ignore switch (this.columnMap[sliceKey]) { case 'TimeStamp': return Utils.getTimeString(Number(sliceValue)); @@ -358,9 +357,9 @@ export class TabPaneSdkSlice extends BaseElement { return Utils.getDurString(Number(sliceValue)); case 'PercentType': return `${sliceValue}%`; - case 'CurrencyType': + case 'CurrencyType'://@ts-ignore return sliceValue.toString().replace(/\B(?=(\d{3})+$)/g, ','); - case 'FIXED': + case 'FIXED'://@ts-ignore return sliceValue.toFixed(2); default: if (typeof sliceValue === 'string') { diff --git a/ide/src/trace/component/trace/sheet/vmtracker/TabPanePurgPinComparisonVM.ts b/ide/src/trace/component/trace/sheet/vmtracker/TabPanePurgPinComparisonVM.ts index 27704e5e4c0c0e1400a363f36f84081362aec4cd..bee675d2aa2626bce4963262c9e61521acc91b5e 100644 --- a/ide/src/trace/component/trace/sheet/vmtracker/TabPanePurgPinComparisonVM.ts +++ b/ide/src/trace/component/trace/sheet/vmtracker/TabPanePurgPinComparisonVM.ts @@ -94,12 +94,12 @@ export class TabPanePurgPinComparisonVM extends BaseElement { const targetArr: CompareStruct[] = []; // 点击的 await queryProcessPurgeableSelectionTab(baseTime, MemoryConfig.getInstance().iPid).then(async (results) => { - for (let i = 0; i < results.length; i++) { + for (let i = 0; i < results.length; i++) {//@ts-ignore baseArr.push(new CompareStruct(results[i].name, results[i].value)); } // 被比较的 await queryProcessPurgeableSelectionTab(targetTime, MemoryConfig.getInstance().iPid).then((results) => { - for (let i = 0; i < results.length; i++) { + for (let i = 0; i < results.length; i++) {//@ts-ignore targetArr.push(new CompareStruct(results[i].name, results[i].value)); } let compareData = compare(targetArr, baseArr); diff --git a/ide/src/trace/component/trace/sheet/vmtracker/TabPanePurgTotalComparisonVM.ts b/ide/src/trace/component/trace/sheet/vmtracker/TabPanePurgTotalComparisonVM.ts index 4bcad116abd1549ef287e92ae144fdef09c38532..a16dde075e193a1dafcc6665c68a2dae8bcc91d4 100644 --- a/ide/src/trace/component/trace/sheet/vmtracker/TabPanePurgTotalComparisonVM.ts +++ b/ide/src/trace/component/trace/sheet/vmtracker/TabPanePurgTotalComparisonVM.ts @@ -99,12 +99,12 @@ export class TabPanePurgTotalComparisonVM extends BaseElement { const targetArr: CompareStruct[] = []; // 点击的 await queryProcessPurgeableSelectionTab(baseTime, MemoryConfig.getInstance().iPid).then(async (results) => { - for (let i = 0; i < results.length; i++) { + for (let i = 0; i < results.length; i++) {//@ts-ignore baseArr.push(new CompareStruct(results[i].name, results[i].value)); } // 被比较的 await queryProcessPurgeableSelectionTab(targetTime, MemoryConfig.getInstance().iPid).then((results) => { - for (let i = 0; i < results.length; i++) { + for (let i = 0; i < results.length; i++) {//@ts-ignore targetArr.push(new CompareStruct(results[i].name, results[i].value)); } let compareData = compare(targetArr, baseArr); diff --git a/ide/src/trace/component/trace/sheet/vmtracker/TabPaneVmTrackerShm.ts b/ide/src/trace/component/trace/sheet/vmtracker/TabPaneVmTrackerShm.ts index 64a8af42a79b6317e9ba491381f225d4fbab6b4d..046d061c3921935adc80a43d38d652770340d0ac 100644 --- a/ide/src/trace/component/trace/sheet/vmtracker/TabPaneVmTrackerShm.ts +++ b/ide/src/trace/component/trace/sheet/vmtracker/TabPaneVmTrackerShm.ts @@ -60,13 +60,13 @@ export class TabPaneVmTrackerShm extends BaseElement { (MemoryConfig.getInstance().interval * 1000_000) / 5 ).then((result) => { if (result.length > 0) { - for (let filter of result) { - filter.time = ns2s(filter.startNS); - filter.sumSizeStr = Utils.getBinaryByteWithUnit(filter.sum); - filter.avgSizeStr = Utils.getBinaryByteWithUnit(filter.avg); - filter.minSizeStr = Utils.getBinaryByteWithUnit(filter.min); + for (let filter of result) {//@ts-ignore + filter.time = ns2s(filter.startNS);//@ts-ignore + filter.sumSizeStr = Utils.getBinaryByteWithUnit(filter.sum);//@ts-ignore + filter.avgSizeStr = Utils.getBinaryByteWithUnit(filter.avg);//@ts-ignore + filter.minSizeStr = Utils.getBinaryByteWithUnit(filter.min);//@ts-ignore filter.maxSizeStr = Utils.getBinaryByteWithUnit(filter.max); - } + }//@ts-ignore this.shmData = result.sort((a, b) => b.avg - a.avg); this.TableEl!.recycleDataSource = this.shmData; } diff --git a/ide/src/trace/component/trace/sheet/vmtracker/TabPaneVmTrackerShmSelection.ts b/ide/src/trace/component/trace/sheet/vmtracker/TabPaneVmTrackerShmSelection.ts index a39dd696dc52d6e17b80dad62efce5eb109f72c5..064a45c760cf60e9c566b29a6fa594728e59a609 100644 --- a/ide/src/trace/component/trace/sheet/vmtracker/TabPaneVmTrackerShmSelection.ts +++ b/ide/src/trace/component/trace/sheet/vmtracker/TabPaneVmTrackerShmSelection.ts @@ -47,9 +47,9 @@ export class TabPaneVmTrackerShmSelection extends BaseElement { queryDataByDB(data: SnapshotStruct): void { queryVmTrackerShmSelectionData(data.startNs, this.memoryConfig.iPid).then((result) => { if (result.length > 0) { - for (let filter of result) { - filter.name = SpSystemTrace.DATA_DICT.get(filter.name)?.split('/'); - filter.ts = ns2s(filter.startNS); + for (let filter of result) {//@ts-ignore + filter.name = SpSystemTrace.DATA_DICT.get(filter.name)?.split('/');//@ts-ignore + filter.ts = ns2s(filter.startNS);//@ts-ignore filter.sizeStr = Utils.getBinaryByteWithUnit(filter.size); this.TableEl!.getItemTextColor = (filter): any => { if (filter.flag === 1) { @@ -60,7 +60,7 @@ export class TabPaneVmTrackerShmSelection extends BaseElement { return '#000000'; } }; - } + }//@ts-ignore this.shmData = result.sort((a, b) => b.size - a.size); this.TableEl!.recycleDataSource = this.shmData; } diff --git a/ide/src/trace/database/DBUtils.ts b/ide/src/trace/database/DBUtils.ts index b1ca66147a6b8c1cc47b99a062bfc62631ae4162..ffdbd27026d12ece9899021ebef556f33cb95327 100644 --- a/ide/src/trace/database/DBUtils.ts +++ b/ide/src/trace/database/DBUtils.ts @@ -113,7 +113,8 @@ export function cacheTraceFileBuffer(db: IDBDatabase, oldFileId: string, fileId: function randomUUID(): string { // @ts-ignore - return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: any) => + return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: unknown) => + //@ts-ignore (c ^ (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4)))).toString(16) ); } diff --git a/ide/src/trace/database/IndexedDBHelp.ts b/ide/src/trace/database/IndexedDBHelp.ts index 898087dc88ff4ae99d4329c7ee49651252bec0ee..6139188e25cdf5fb96e7e792cc94bb01fd49e74d 100644 --- a/ide/src/trace/database/IndexedDBHelp.ts +++ b/ide/src/trace/database/IndexedDBHelp.ts @@ -81,12 +81,14 @@ export class IndexedDBHelp { public get(storeName: string, query: IDBValidKey | IDBKeyRange, queryIndex?: string): Promise { return new Promise((resolve, reject) => { - this.getObjectStore(storeName).then((objectStore: IDBObjectStore) => { - let request: IDBRequest; + this.getObjectStore(storeName).then((objectStore: IDBObjectStore) => {// @ts-ignore + let request: IDBRequest; if (queryIndex) { const index = objectStore.index(queryIndex); + //@ts-ignore request = index.getAll(query); } else { + //@ts-ignore request = objectStore.getAll(query); } request.onsuccess = function (event): void { @@ -99,8 +101,8 @@ export class IndexedDBHelp { }); }); } - - public add(storeName: string, value: any, key?: IDBValidKey): Promise { +// @ts-ignore + public add(storeName: string, value: unknown, key?: IDBValidKey): Promise { return new Promise((resolve, reject) => { this.getObjectStore(storeName).then((objectStore: IDBObjectStore) => { const request = objectStore.add(value, key); @@ -129,8 +131,8 @@ export class IndexedDBHelp { }); }); } - - public put(storeName: string, value: any, key?: IDBValidKey): Promise { +// @ts-ignore + public put(storeName: string, value: unknown, key?: IDBValidKey): Promise { return new Promise((resolve, reject) => { this.getObjectStore(storeName).then((objectStore: IDBObjectStore) => { const request = objectStore.put(value, key); diff --git a/ide/src/trace/database/LongTraceDBUtils.ts b/ide/src/trace/database/LongTraceDBUtils.ts index 0975c9c4a7ea5e54c807c86753687e542f7b046f..f8d0a305a3d70d93cc7351c593155409edcb26da 100644 --- a/ide/src/trace/database/LongTraceDBUtils.ts +++ b/ide/src/trace/database/LongTraceDBUtils.ts @@ -43,7 +43,8 @@ export class LongTraceDBUtils { ]); } - getByRange(range: IDBKeyRange): Promise { + getByRange(range: IDBKeyRange):// @ts-ignore + Promise { return this.indexedDBHelp.get(this.tableName, range, 'QueryFileByPage'); } @@ -55,7 +56,8 @@ export class LongTraceDBUtils { index: number, offset: number, sliceLen: number - ): Promise { + ):// @ts-ignore + Promise { return this.indexedDBHelp.add(this.tableName, { buf: data, id: `${fileType}_${timStamp}_${pageNumber}_${index}`, diff --git a/ide/src/trace/database/Procedure.ts b/ide/src/trace/database/Procedure.ts index 8dbe552c985e8ff6f636fdc737ced852226d4b87..d8b5469faf2cc0d4a5b84b6e89635ec30e8f9793 100644 --- a/ide/src/trace/database/Procedure.ts +++ b/ide/src/trace/database/Procedure.ts @@ -18,8 +18,8 @@ import { query } from './SqlLite'; class ProcedureThread { busy: boolean = false; isCancelled: boolean = false; - id: number = -1; - taskMap: any = {}; + id: number = -1;//@ts-ignore + taskMap: unknown = {}; name: string | undefined; worker?: Worker; constructor(worker: Worker) { @@ -31,10 +31,10 @@ class ProcedureThread { (c ^ (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4)))).toString(16) ); } - - queryFunc(type: string, args: any, transfer: any, handler: Function): void { +//@ts-ignore + queryFunc(type: string, args: unknown, transfer: unknown, handler: Function): void { this.busy = true; - let id = this.uuid(); + let id = this.uuid();// @ts-ignore this.taskMap[id] = handler; let pam = { id: id, @@ -49,10 +49,11 @@ class ProcedureThread { } else { this.worker!.postMessage(pam); } - } else { + } else {// @ts-ignore this.worker!.postMessage(pam, [transfer]); } - } catch (e: any) {} + } catch (//@ts-ignore + e: unknown) {} } else { this.worker!.postMessage(pam); } @@ -68,7 +69,8 @@ class ProcedurePool { static cpuCount = Math.floor((window.navigator.hardwareConcurrency || 4) / 2); maxThreadNumber: number = 1; works: Array = []; - timelineChange: ((a: any) => void) | undefined | null = null; + timelineChange: ((//@ts-ignore + a: unknown) => void) | undefined | null = null; cpusLen = ProcedurePool.build('cpu', 0); freqLen = ProcedurePool.build('freq', 0); processLen = ProcedurePool.build('process', 0); @@ -113,13 +115,13 @@ class ProcedurePool { this.timelineChange?.(event.data.results); newThread.busy = false; return; - } + }// @ts-ignore if (Reflect.has(newThread.taskMap, event.data.id)) { - if (event.data) { + if (event.data) {// @ts-ignore let fun = newThread.taskMap[event.data.id]; if (fun) { fun(event.data.results, event.data.hover); - } + }// @ts-ignore Reflect.deleteProperty(newThread.taskMap, event.data.id); } } @@ -159,7 +161,8 @@ class ProcedurePool { thread.worker!.onmessage = (event: MessageEvent): void => { thread.busy = false; if (event.data.isQuery) { - query(event.data.type, event.data.sql, event.data.args, 'exec-buf').then((res: any) => { + query(event.data.type, event.data.sql, event.data.args, 'exec-buf').then((// @ts-ignore + res: unknown) => { thread.worker!.postMessage({ type: event.data.type, params: { @@ -171,8 +174,9 @@ class ProcedurePool { return; } if (event.data.isSending) { - if (Reflect.has(thread.taskMap, event.data.id)) { - if (event.data) { + if (Reflect.has(// @ts-ignore + thread.taskMap, event.data.id)) { + if (event.data) {// @ts-ignore let fun = thread.taskMap[event.data.id]; if (fun) { fun(event.data.results, event.data.hover); @@ -180,13 +184,13 @@ class ProcedurePool { return; } } - } + }// @ts-ignore if (Reflect.has(thread.taskMap, event.data.id)) { - if (event.data) { + if (event.data) {// @ts-ignore let fun = thread.taskMap[event.data.id]; if (fun) { fun(event.data.results, event.data.hover); - } + }// @ts-ignore Reflect.deleteProperty(thread.taskMap, event.data.id); } } @@ -208,8 +212,8 @@ class ProcedurePool { thread.queryFunc('clear', {}, undefined, () => {}); } }; - - submitWithName(name: string, type: string, args: any, transfer: any, handler: Function): ProcedureThread | undefined { +// @ts-ignore + submitWithName(name: string, type: string, args: unknown, transfer: unknown, handler: Function): ProcedureThread | undefined { let noBusyThreads = this.works.filter((it) => it.name === name); let thread: ProcedureThread | undefined; if (noBusyThreads.length > 0) { @@ -219,15 +223,15 @@ class ProcedurePool { } return thread; } - - submitWithNamePromise(name: string, type: string, args: any, transfer: any): Promise { +// @ts-ignore + submitWithNamePromise(name: string, type: string, args: unknown, transfer: unknown): Promise { return new Promise((resolve, reject) => { let noBusyThreads = this.works.filter((it) => it.name === name); let thread: ProcedureThread | undefined; if (noBusyThreads.length > 0) { //取第一个空闲的线程进行任务 - thread = noBusyThreads[0]; - thread!.queryFunc(type, args, transfer, (res: any, hover: any) => { + thread = noBusyThreads[0];// @ts-ignore + thread!.queryFunc(type, args, transfer, (res: unknown, hover: unknown) => { resolve({ res: res, hover: hover, diff --git a/ide/src/trace/database/SqlLite.ts b/ide/src/trace/database/SqlLite.ts index fd745c304ac4e961c14cf16b34b181a986b323ec..bdfebd69f2698cfbd23bc7934ea02dd042ffe8f6 100644 --- a/ide/src/trace/database/SqlLite.ts +++ b/ide/src/trace/database/SqlLite.ts @@ -13,20 +13,22 @@ * limitations under the License. */ class DataWorkerThread { - taskMap: any = {}; + //@ts-ignore + taskMap: unknow = {}; worker?: Worker; constructor(worker: Worker) { this.worker = worker; } uuid(): string { // @ts-ignore - return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: any) => + return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: unknow) => (c ^ (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4)))).toString(16) ); } //发送方法名 参数 回调 - queryFunc(action: string, args: any, handler: Function): void { + //@ts-ignore + queryFunc(action: string, args: unknow, handler: Function): void { let id = this.uuid(); this.taskMap[id] = handler; let msg = { @@ -42,8 +44,10 @@ class DbThread { busy: boolean = false; isCancelled: boolean = false; id: number = -1; - taskMap: any = {}; - cacheArray: Array = []; + //@ts-ignore + taskMap: unknow = {}; + //@ts-ignore + cacheArray: Array = []; worker?: Worker; constructor(worker: Worker) { @@ -52,12 +56,13 @@ class DbThread { uuid(): string { // @ts-ignore - return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: any) => + return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: unknow) => (c ^ (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4)))).toString(16) ); } - queryFunc(name: string, sql: string, args: any, handler: Function, action: string | null): void { + //@ts-ignore + queryFunc(name: string, sql: string, args: unknow, handler: Function, action: string | null): void { this.busy = true; let id = this.uuid(); this.taskMap[id] = handler; @@ -71,7 +76,8 @@ class DbThread { this.worker?.postMessage(msg); } - queryProto(name: number, args: any, handler: Function): void { + //@ts-ignore + queryProto(name: number, args: unknow, handler: Function): void { this.busy = true; let id = this.uuid(); this.taskMap[id] = handler; @@ -91,7 +97,8 @@ class DbThread { ): void { this.busy = true; let id = this.uuid(); - this.taskMap[id] = (res: any): void => { + //@ts-ignore + this.taskMap[id] = (res: unknow): void => { DbPool.sharedBuffer = res.buffer; if (res.cutStatus) { handler(res.cutStatus, res.msg, res.cutBuffer); @@ -125,12 +132,15 @@ class DbThread { status: boolean; msg: string; buffer: ArrayBuffer; - sdkConfigMap: any; + //@ts-ignore + sdkConfigMap: unknow; fileKey: string; }> => { - return new Promise((resolve, reject) => { + //@ts-ignore + return new Promise((resolve, reject) => { let id = this.uuid(); - this.taskMap[id] = (res: any): any => { + //@ts-ignore + this.taskMap[id] = (res: unknow): unknow => { if (res.init) { resolve({ status: res.init, @@ -171,7 +181,7 @@ export class DbPool { works: Array = []; progress: Function | undefined | null; num = Math.floor(Math.random() * 10 + 1) + 20; - cutDownTimer: any | undefined; + cutDownTimer: unknown | undefined; dataWorker: DataWorkerThread | undefined | null; currentWasmThread: DbThread | undefined = undefined; @@ -232,6 +242,7 @@ export class DbPool { DbPool.sharedBuffer = null; } else if (Reflect.has(event.data, 'init')) { if (this.cutDownTimer !== undefined) { + //@ts-ignore clearInterval(this.cutDownTimer); } let fun = thread!.taskMap[event.data.id]; @@ -285,7 +296,8 @@ export class DbPool { | { status: boolean; msg: string; - sdkConfigMap: any; + //@ts-ignore + sdkConfigMap: unknow; } > => { this.progress = progress; @@ -364,6 +376,7 @@ export class DbPool { } close = async (): Promise => { + //@ts-ignore clearInterval(this.cutDownTimer); for (let thread of this.works) { thread.worker?.terminate(); @@ -371,7 +384,8 @@ export class DbPool { this.works.length = 0; }; - submit(name: string, sql: string, args: any, handler: Function, action: string | null): void { + //@ts-ignore + submit(name: string, sql: string, args: unknow, handler: Function, action: string | null): void { let noBusyThreads = this.works.filter((it) => !it.busy); let thread: DbThread; if (noBusyThreads.length > 0) { @@ -385,7 +399,8 @@ export class DbPool { } } - submitProto(name: number, args: any, handler: Function): void { + //@ts-ignore + submitProto(name: number, args: unknow, handler: Function): void { let noBusyThreads = this.works.filter((it) => !it.busy); let thread: DbThread; if (noBusyThreads.length > 0) { @@ -402,7 +417,8 @@ export class DbPool { } //new method replace submit() method - submitTask(action: string, args: any, handler: Function): void { + //@ts-ignore + submitTask(action: string, args: unknow, handler: Function): void { this.dataWorker?.queryFunc(action, args, handler); } @@ -424,11 +440,13 @@ export class DbPool { progressTimer(num: number, progress: Function): void { let currentNum = num; + //@ts-ignore clearInterval(this.cutDownTimer); this.cutDownTimer = setInterval(() => { currentNum += Math.floor(Math.random() * 3); if (currentNum >= 50) { progress('database opened', 40); + //@ts-ignore clearInterval(this.cutDownTimer); } else { progress('database opened', currentNum); @@ -439,13 +457,15 @@ export class DbPool { export const threadPool = new DbPool(); -export function query(name: string, sql: string, args: any = null, action: string | null = null): Promise> { + //@ts-ignore +export function query(name: string, sql: string, args: unknow = null, action: string | null = null): Promise> { return new Promise>((resolve, reject) => { threadPool.submit( name, sql, args, - (res: any) => { + //@ts-ignore + (res: unknow) => { if (res[0] && res[0] === 'error') { window.publish(window.SmartEvent.UI.Error, res[1]); reject(res); diff --git a/ide/src/trace/database/SqlLiteWorker.ts b/ide/src/trace/database/SqlLiteWorker.ts index 4b78c6479e0fb1a9173227cf2a6625384b56e21a..f109059d321972f9b0a13a030768f2bdcacfa77f 100644 --- a/ide/src/trace/database/SqlLiteWorker.ts +++ b/ide/src/trace/database/SqlLiteWorker.ts @@ -18,7 +18,7 @@ import { temp_init_sql_list } from './TempSql'; import { execProtoForWorker } from './data-trafic/utils/ExecProtoForWorker'; import { TraficEnum } from './data-trafic/utils/QueryEnum'; -let conn: any = null; +let conn: unknown = null; let encoder = new TextEncoder(); function initIndexedDB(): Promise { return new Promise((resolve, reject) => { @@ -82,18 +82,23 @@ let mergedUnitArray = (bufferSliceUint8: Array): Uint8Array => { self.onerror = function (error): void {}; -self.onmessage = async (e: any): Promise => { +self.onmessage = async (e: unknown): Promise => { + //@ts-ignore if (e.data.action === 'open') { + //@ts-ignore let array = new Uint8Array(e.data.buffer); // @ts-ignore - initSqlJs({ locateFile: (filename) => `${filename}` }).then((SQL: any) => { + initSqlJs({ locateFile: (filename) => `${filename}` }).then((SQL: unknown) => { + // @ts-ignore conn = new SQL.Database(array); // @ts-ignore self.postMessage({ id: e.data.id, ready: true, index: 0 }); temp_init_sql_list.forEach((item, index) => { + // @ts-ignore let r = conn.exec(item); // @ts-ignore self.postMessage({ + //@ts-ignore id: e.data.id, ready: true, index: index + 1, @@ -102,42 +107,58 @@ self.onmessage = async (e: any): Promise => { // @ts-ignore self.postMessage({ id: e.data.id, init: true }); }); - } else if (e.data.action === 'close') { - } else if (e.data.action === 'exec' || e.data.action === 'exec-buf' || e.data.action === 'exec-metric') { + } else if ( + //@ts-ignore + e.data.action === 'close') { + } else if ( + //@ts-ignore + e.data.action === 'exec' || e.data.action === 'exec-buf' || e.data.action === 'exec-metric') { try { + //@ts-ignore let action = e.data.action; //: "exec" + //@ts-ignore let sql = e.data.sql; + //@ts-ignore let params = e.data.params; + // @ts-ignore const stmt = conn.prepare(sql); stmt.bind(params); let res = []; while (stmt.step()) { - // + //@ts-ignore res.push(stmt.getAsObject()); } stmt.free(); // @ts-ignore self.postMessage({ id: e.data.id, results: res }); - } catch (err: any) { + } catch (err: unknown) { // @ts-ignore self.postMessage({ + //@ts-ignore id: e.data.id, results: [], + //@ts-ignore error: err.message, }); } - } else if (e.data.action === 'exec-proto') { + } else if ( + //@ts-ignore + e.data.action === 'exec-proto') { + //@ts-ignore e.data.params.trafic = TraficEnum.Memory; + //@ts-ignore execProtoForWorker(e.data, (sql: string) => { try { + // @ts-ignore const stmt = conn.prepare(sql); let res = []; while (stmt.step()) { + //@ts-ignore res.push(stmt.getAsObject()); } stmt.free(); return res; - } catch (err: any) { + } catch (err: unknown) { console.log(err); return []; } diff --git a/ide/src/trace/database/StateBusyTimeWorker.ts b/ide/src/trace/database/StateBusyTimeWorker.ts index c12af4c8e7488b507a5a4776cc4a93937bd59bfd..39cb261d6012b0f1d1a39236ec9450b21785db94 100644 --- a/ide/src/trace/database/StateBusyTimeWorker.ts +++ b/ide/src/trace/database/StateBusyTimeWorker.ts @@ -14,9 +14,9 @@ */ function getBusyTime( - initFreqResult: Array, - initStateResult: Array, - sampleMap: Map, + initFreqResult: Array, + initStateResult: Array, + sampleMap: Map, leftStartNs: number, rightEndNs: number ): void { @@ -27,6 +27,7 @@ function getBusyTime( return; } //处理被框选的freq的第一个数据 + //@ts-ignore let includeData = initFreqResult.findIndex((a) => a.ts >= leftStartNs); if (includeData !== 0) { initFreqResult = initFreqResult.slice( @@ -34,8 +35,10 @@ function getBusyTime( initFreqResult.length ); } + //@ts-ignore let startNS = includeData === 0 ? initFreqResult[0].ts : leftStartNs; //处理对应的state泳道被框选的第一个数据 + //@ts-ignore let includeStateData = initStateResult.findIndex((a) => a.ts >= startNS); if (includeStateData !== 0) { initStateResult = initStateResult.slice( @@ -43,21 +46,28 @@ function getBusyTime( initStateResult.length ); } + //@ts-ignore if (initStateResult[0].ts < startNS && includeStateData !== 0 && includeStateData !== -1) { + //@ts-ignore initStateResult[0].ts = startNS; } //处理被框选的freq最后一个数据 + //@ts-ignore if (initFreqResult[initFreqResult.length - 1].ts !== rightEndNs) { initFreqResult.push({ ts: rightEndNs, + //@ts-ignore value: initFreqResult[initFreqResult.length - 1].value, + //@ts-ignore filterId: initFreqResult[initFreqResult.length - 1].filterId, }); } //处理被框选的freq最后一个数据 + //@ts-ignore if (initStateResult[initStateResult.length - 1].ts !== rightEndNs) { initStateResult.push({ ts: rightEndNs, + //@ts-ignore value: initStateResult[initStateResult.length - 1].value, }); } @@ -65,17 +75,20 @@ function getBusyTime( } function handleBusyTimeLogic( - initFreqResult: Array, - initStateResult: Array, - sampleMap: Map, + initFreqResult: Array, + initStateResult: Array, + sampleMap: Map, startNS: number ): void { let freqIndex = 1; let stateIndex = 1; let beginNs = startNS; //value和Id的起始值是第0项 + //@ts-ignore let freqId = initFreqResult[0].filterId; + //@ts-ignore let freqVal = initFreqResult[0].value; + //@ts-ignore let stateVal = initStateResult[0].value; //从index = 1开始循环 while (freqIndex < initFreqResult.length && stateIndex < initStateResult.length) { @@ -85,19 +98,32 @@ function handleBusyTimeLogic( let newStateVal = stateVal; let busyTime = 0; //比较ts值,每次比较取ts相对小的那一项 + //@ts-ignore if (initFreqResult[freqIndex].ts < initStateResult[stateIndex].ts) { + //@ts-ignore newfreqVal = initFreqResult[freqIndex].value; + //@ts-ignore newBeginNs = initFreqResult[freqIndex].ts; + //@ts-ignore newfreqId = initFreqResult[freqIndex].filterId; freqIndex++; - } else if (initFreqResult[freqIndex].ts > initStateResult[stateIndex].ts) { + } else if ( + //@ts-ignore + initFreqResult[freqIndex].ts > initStateResult[stateIndex].ts + ) { + //@ts-ignore newStateVal = initStateResult[stateIndex].value; + //@ts-ignore newBeginNs = initStateResult[stateIndex].ts; stateIndex++; } else { + //@ts-ignore newStateVal = initStateResult[stateIndex].value; + //@ts-ignore newfreqVal = initFreqResult[freqIndex].value; + //@ts-ignore newfreqId = initFreqResult[freqIndex].filterId; + //@ts-ignore newBeginNs = initStateResult[stateIndex].ts; freqIndex++; stateIndex++; @@ -107,6 +133,7 @@ function handleBusyTimeLogic( busyTime = newBeginNs - beginNs; if (sampleMap.has(freqId + '-' + freqVal)) { let obj = sampleMap.get(freqId + '-' + freqVal); + //@ts-ignore obj.busyTime += busyTime; } } @@ -122,14 +149,18 @@ self.onmessage = (e: MessageEvent): void => { let rightEndNs = e.data.timeParam.rightNs + e.data.timeParam.recordStartNs; e.data.cpuFiliterOrder.forEach((a: number) => { getBusyTime( - e.data.result.filter((f: any) => f.cpu === a), - e.data.res.filter((f: any) => f.cpu === a), + //@ts-ignore + e.data.result.filter((f: unknown) => f.cpu === a), + + //@ts-ignore + e.data.res.filter((f: unknown) => f.cpu === a), e.data.sampleMap, leftStartNs, rightEndNs ); }); - e.data.sampleMap.forEach((a: any) => { + e.data.sampleMap.forEach((a: unknown) => { + //@ts-ignore a.busyTime = parseFloat((a.busyTime / 1000000.0).toFixed(6)); }); diff --git a/ide/src/trace/database/TraceWorker.ts b/ide/src/trace/database/TraceWorker.ts index c99c07c9b2508313929e9ee0a9a5521d713772b1..26fe63f7dbf9e4992cb06d7a8b0587cd079fef45 100644 --- a/ide/src/trace/database/TraceWorker.ts +++ b/ide/src/trace/database/TraceWorker.ts @@ -20,13 +20,13 @@ import { temp_init_sql_list } from './TempSql'; // @ts-ignore import { BatchSphData } from '../proto/SphBaseData'; -let wasmModule: any = null; +let wasmModule: unknown = null; let enc = new TextEncoder(); let dec = new TextDecoder(); let arr: Uint8Array | undefined; const REQ_BUF_SIZE = 4 * 1024 * 1024; let reqBufferAddr: number = -1; -let bufferSlice: Array = []; +let bufferSlice: Array = []; let json: string; let headUnitArray: Uint8Array | undefined; @@ -48,9 +48,10 @@ let ffrtFileCacheKey = '-1'; let indexDB: IDBDatabase; const maxSize = 48 * 1024 * 1024; -let protoDataMap: Map = new Map(); +let protoDataMap: Map = new Map(); function clear(): void { if (wasmModule !== null) { + //@ts-ignore wasmModule._TraceStreamerReset(); wasmModule = null; } @@ -82,11 +83,11 @@ function initWASM(): Promise { //@ts-ignore let wasm = trace_streamer_builtin_wasm; wasmModule = wasm({ - locateFile: (s: any) => { + locateFile: (s: unknown):unknown => { return s; }, - print: (line: any) => {}, - printErr: (line: any) => {}, + print: (line: unknown) => {}, + printErr: (line: unknown) => {}, onRuntimeInitialized: () => { resolve('ok'); }, @@ -97,15 +98,15 @@ function initWASM(): Promise { }); } -function initThirdWASM(wasmFunctionName: string): any { - function callModelFun(functionName: string): any { +function initThirdWASM(wasmFunctionName: string): unknown { + function callModelFun(functionName: string): unknown { let func = eval(functionName); return new func({ - locateFile: (s: any): any => { + locateFile: (s: unknown): any => { return s; }, - print: (line: any): void => {}, - printErr: (line: any): void => {}, + print: (line: unknown): void => {}, + printErr: (line: unknown): void => {}, onRuntimeInitialized: (): void => {}, onAbort: (): void => {}, }); @@ -117,12 +118,15 @@ function initThirdWASM(wasmFunctionName: string): any { let merged = (): Uint8Array => { let length = 0; bufferSlice.forEach((item) => { + //@ts-ignore length += item.length; }); let mergedArray = new Uint8Array(length); let offset = 0; bufferSlice.forEach((item) => { + //@ts-ignore mergedArray.set(item, offset); + //@ts-ignore offset += item.length; }); return mergedArray; @@ -133,10 +137,10 @@ let translateJsonString = (str: string): string => { .replace(/[\t|\r|\n]/g, ''); }; -let convertJSON = (): any[] => { +let convertJSON = (): unknown[] => { try { let str = dec.decode(arr); - let jsonArray: Array = []; + let jsonArray: Array = []; str = str.substring(str.indexOf('\n') + 1); if (!str) { } else { @@ -157,8 +161,9 @@ let convertJSON = (): any[] => { let columns = parse.columns; let values = parse.values; for (let i = 0; i < values.length; i++) { - let obj: any = {}; + let obj: unknown = {}; for (let j = 0; j < columns.length; j++) { + //@ts-ignore obj[columns[j]] = values[i][j]; } jsonArray.push(obj); @@ -171,7 +176,8 @@ let convertJSON = (): any[] => { action: currentAction, init: false, status: false, - msg: (e as any).message, + //@ts-ignore + msg: (e as unknown).message, }); return []; } @@ -249,6 +255,7 @@ async function onmessageByOpenAction(e: MessageEvent): Promise { } else { r2 = parseNormalTraceByOpenAction(wrSize, r2, uint8Array); } + //@ts-ignore wasmModule._TraceStreamerParseDataOver(); for (let value of thirdWasmMap.values()) { value.model._TraceStreamer_In_ParseDataOver(); @@ -258,6 +265,7 @@ async function onmessageByOpenAction(e: MessageEvent): Promise { function initModuleCallBackAndFun(): void { let callback = (heapPtr: number, size: number, isEnd: number): void => { + //@ts-ignore let out: Uint8Array = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); bufferSlice.push(out); if (isEnd === 1) { @@ -265,10 +273,13 @@ function initModuleCallBackAndFun(): void { bufferSlice.length = 0; } }; + //@ts-ignore let fn = wasmModule.addFunction(callback, 'viii'); + //@ts-ignore reqBufferAddr = wasmModule._Initialize(fn, REQ_BUF_SIZE); let ffrtConvertCallback = (heapPtr: number, size: number, isEnd: number): void => { if (isEnd !== 1) { + //@ts-ignore let out: Uint8Array = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); bufferSlice.push(out); } else { @@ -279,13 +290,19 @@ function initModuleCallBackAndFun(): void { } }; let tlvResultCallback = (heapPtr: number, size: number, type: number, isEnd: number): void => { + //@ts-ignore let out: Uint8Array = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); protoDataMap.set(type, BatchSphData.decode(out).values); }; + //@ts-ignore let fn1 = wasmModule.addFunction(callback, 'viii'); + //@ts-ignore let fn2 = wasmModule.addFunction(ffrtConvertCallback, 'viii'); + //@ts-ignore let tlvResultFun = wasmModule.addFunction(tlvResultCallback, 'viiii'); + //@ts-ignore wasmModule._TraceStreamer_Set_Log_Level(5); + //@ts-ignore reqBufferAddr = wasmModule._Initialize(REQ_BUF_SIZE, fn1, tlvResultFun, fn2); } @@ -293,31 +310,39 @@ function parseThirdWasmByOpenAction(e: MessageEvent): void { let parseConfig = e.data.parseConfig; if (parseConfig !== '') { let parseConfigArray = enc.encode(parseConfig); + //@ts-ignore let parseConfigAddr = wasmModule._InitializeParseConfig(1024); + //@ts-ignore wasmModule.HEAPU8.set(parseConfigArray, parseConfigAddr); + //@ts-ignore wasmModule._TraceStreamerParserConfigEx(parseConfigArray.length); } let wasmConfigStr = e.data.wasmConfig; if (wasmConfigStr !== '' && wasmConfigStr.indexOf('WasmFiles') !== -1) { let wasmConfig = JSON.parse(wasmConfigStr); let wasmConfigs = wasmConfig.WasmFiles; - let itemArray = wasmConfigs.map((item: any) => { + let itemArray = wasmConfigs.map((item: unknown) => { + //@ts-ignore return item.componentId + ';' + item.pluginName; }); let thirdWasmStr: string = itemArray.join(';'); let configUintArray = enc.encode(thirdWasmStr + ';'); + //@ts-ignore wasmModule.HEAPU8.set(configUintArray, reqBufferAddr); + //@ts-ignore wasmModule._TraceStreamer_Init_ThirdParty_Config(configUintArray.length); let first = true; let sendDataCallback = (heapPtr: number, size: number, componentID: number): void => { if (componentID === 100) { if (first) { first = false; + //@ts-ignore headUnitArray = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); } return; } - let configs = wasmConfigs.filter((wasmConfig: any) => { + let configs = wasmConfigs.filter((wasmConfig: unknown) => { + //@ts-ignore return wasmConfig.componentId === componentID; }); if (configs.length > 0) { @@ -328,13 +353,16 @@ function parseThirdWasmByOpenAction(e: MessageEvent): void { setThirdWasmMap(config, heapPtr, size, componentID); } else { let mm = model.model; + //@ts-ignore let out: Uint8Array = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); mm.HEAPU8.set(out, model.bufferAddr); mm._ParserData(out.length, componentID); } } }; + //@ts-ignore let fn1 = wasmModule.addFunction(sendDataCallback, 'viii'); + //@ts-ignore let reqBufferAddr1 = wasmModule._TraceStreamer_Set_ThirdParty_DataDealer(fn1, REQ_BUF_SIZE); } } @@ -386,8 +414,10 @@ function parseRawTraceByOpenAction(e: MessageEvent, wrSize: number, r2: number, while (wrSize < final.length) { const sliceLen = Math.min(final.length - wrSize, REQ_BUF_SIZE); const dataSlice = final.subarray(wrSize, wrSize + sliceLen); + //@ts-ignore wasmModule.HEAPU8.set(dataSlice, reqBufferAddr); wrSize += sliceLen; + //@ts-ignore r2 = wasmModule._TraceStreamerParseDataEx(sliceLen, wrSize === final.length ? 1 : 0); if (r2 === -1) { break; @@ -400,8 +430,10 @@ function parseNormalTraceByOpenAction(wrSize: number, r2: number, uint8Array: Ui while (wrSize < uint8Array.length) { const sliceLen = Math.min(uint8Array.length - wrSize, REQ_BUF_SIZE); const dataSlice = uint8Array.subarray(wrSize, wrSize + sliceLen); + //@ts-ignore wasmModule.HEAPU8.set(dataSlice, reqBufferAddr); wrSize += sliceLen; + //@ts-ignore r2 = wasmModule._TraceStreamerParseDataEx(sliceLen, wrSize === uint8Array.length ? 1 : 0); if (r2 === -1) { break; @@ -410,22 +442,31 @@ function parseNormalTraceByOpenAction(wrSize: number, r2: number, uint8Array: Ui return r2; } -function setThirdWasmMap(config: any, heapPtr: number, size: number, componentID: number): void { +function setThirdWasmMap(config: unknown, heapPtr: number, size: number, componentID: number): void { + //@ts-ignore let thirdMode = initThirdWASM(config.wasmName); + //@ts-ignore let configPluginName = config.pluginName; let pluginNameUintArray = enc.encode(configPluginName); + //@ts-ignore let pluginNameBuffer = thirdMode._InitPluginName(pluginNameUintArray.length); + //@ts-ignore thirdMode.HEAPU8.set(pluginNameUintArray, pluginNameBuffer); + //@ts-ignore thirdMode._TraceStreamerGetPluginNameEx(configPluginName.length); let thirdQueryDataCallBack = (heapPtr: number, size: number, isEnd: number, isConfig: number): void => { if (isConfig === 1) { + //@ts-ignore let out: Uint8Array = thirdMode.HEAPU8.slice(heapPtr, heapPtr + size); thirdJsonResult.set(componentID, { jsonConfig: dec.decode(out), + //@ts-ignore disPlayName: config.disPlayName, + //@ts-ignore pluginName: config.pluginName, }); } else { + //@ts-ignore let out: Uint8Array = thirdMode.HEAPU8.slice(heapPtr, heapPtr + size); bufferSlice.push(out); if (isEnd === 1) { @@ -434,14 +475,22 @@ function setThirdWasmMap(config: any, heapPtr: number, size: number, componentID } } }; + //@ts-ignore let fn = thirdMode.addFunction(thirdQueryDataCallBack, 'viiii'); + //@ts-ignore let thirdreqBufferAddr = thirdMode._Init(fn, REQ_BUF_SIZE); let mm = initTraceRange(thirdMode); + //@ts-ignore thirdMode._TraceStreamer_In_JsonConfig(); + //@ts-ignore thirdMode.HEAPU8.set(headUnitArray, thirdreqBufferAddr); + //@ts-ignore thirdMode._ParserData(headUnitArray!.length, 100); + //@ts-ignore let out: Uint8Array = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); + //@ts-ignore thirdMode.HEAPU8.set(out, thirdreqBufferAddr); + //@ts-ignore thirdMode._ParserData(out.length, componentID); thirdWasmMap.set(componentID, { model: thirdMode, @@ -480,13 +529,18 @@ function postMessageByOpenAction(r2: number, e: MessageEvent): void { ); } -function initTraceRange(thirdMode: any): any { +function initTraceRange(thirdMode: unknown): unknown { let updateTraceTimeCallBack = (heapPtr: number, size: number): void => { + //@ts-ignore let out: Uint8Array = thirdMode.HEAPU8.slice(heapPtr, heapPtr + size); + //@ts-ignore wasmModule.HEAPU8.set(out, reqBufferAddr); + //@ts-ignore wasmModule._UpdateTraceTime(out.length); }; + //@ts-ignore let traceRangeFn = thirdMode.addFunction(updateTraceTimeCallBack, 'vii'); + //@ts-ignore let mm = thirdMode._InitTraceRange(traceRangeFn, 1024); return mm; } @@ -507,7 +561,9 @@ function onmessageByExecProtoAction(e: MessageEvent): void { execProtoForWorker(e.data, (sql: string) => { let sqlUintArray = enc.encode(sql); if (e.data.params.trafic !== TraficEnum.ProtoBuffer) { + //@ts-ignore wasmModule.HEAPU8.set(sqlUintArray, reqBufferAddr); + //@ts-ignore wasmModule._TraceStreamerSqlQueryEx(sqlUintArray.length); let jsonArray = convertJSON(); return jsonArray; @@ -515,10 +571,13 @@ function onmessageByExecProtoAction(e: MessageEvent): void { let allArray = new Uint8Array(typeLength + sqlUintArray.length); allArray[0] = e.data.name; allArray.set(sqlUintArray, typeLength); + //@ts-ignore wasmModule.HEAPU8.set(allArray, reqBufferAddr); + //@ts-ignore wasmModule._TraceStreamerSqlQueryToProtoCallback(allArray.length); let finalArrayBuffer = []; if (protoDataMap.has(e.data.name)) { + //@ts-ignore finalArrayBuffer = protoDataMap.get(e.data.name); protoDataMap.delete(e.data.name); } @@ -572,21 +631,25 @@ function onmessageByInitPortAction(e: MessageEvent): void { } function onmessageByDownloadDBAction(e: MessageEvent): void { - let bufferSliceUint: Array = []; + let bufferSliceUint: Array = []; let mergedUint = (): Uint8Array => { let length = 0; bufferSliceUint.forEach((item) => { + //@ts-ignore length += item.length; }); let mergedArray = new Uint8Array(length); let offset = 0; bufferSliceUint.forEach((item) => { + //@ts-ignore mergedArray.set(item, offset); + //@ts-ignore offset += item.length; }); return mergedArray; }; let getDownloadDb = (heapPtr: number, size: number, isEnd: number): void => { + //@ts-ignore let out: Uint8Array = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); bufferSliceUint.push(out); if (isEnd === 1) { @@ -598,7 +661,9 @@ function onmessageByDownloadDBAction(e: MessageEvent): void { }); } }; + //@ts-ignore let fn1 = wasmModule.addFunction(getDownloadDb, 'viii'); + //@ts-ignore wasmModule._WasmExportDatabase(fn1); } @@ -611,6 +676,7 @@ function onmessageByUploadSoAction(e: MessageEvent): void { soFileList = fileList; uploadFileIndex = 0; if (!uploadSoCallbackFn) { + //@ts-ignore uploadSoCallbackFn = wasmModule.addFunction(uploadSoCallBack, 'viii'); } uploadSoFile(soFileList[uploadFileIndex]).then(); @@ -654,6 +720,7 @@ function cutLongTraceCallBackHandle( > ): void { let key = `${traceFileType}_${currentPageNum}`; + //@ts-ignore let out: Uint8Array = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); if (DataTypeEnum.data === dataType) { if (traceFileType === 'arkts') { @@ -685,8 +752,11 @@ function initSplitLongTraceModuleAndFun( headArray: Uint8Array, cutFileCallBack: (heapPtr: number, size: number, dataType: number, isEnd: number) => void ): number { + //@ts-ignore splitReqBufferAddr = wasmModule._InitializeSplitFile(wasmModule.addFunction(cutFileCallBack, 'viiii'), REQ_BUF_SIZE); + //@ts-ignore wasmModule.HEAPU8.set(headArray, splitReqBufferAddr); + //@ts-ignore wasmModule._TraceStreamerGetLongTraceTimeSnapEx(headArray.length); return splitReqBufferAddr; } @@ -732,7 +802,7 @@ async function handleDataTypeBySplitLongTrace( async function saveAllDataByLongTrace( range: IDBKeyRange, - nowCutInfoList: Array, + nowCutInfoList: Array, searchDataInfo: { fileType: string; index: number; @@ -756,8 +826,10 @@ async function saveAllDataByLongTrace( let mergeData = indexedDataToBufferData(queryAllData); for (let cutOffsetObjIndex = 0; cutOffsetObjIndex < nowCutInfoList.length; cutOffsetObjIndex++) { let cutUseOffsetObj = nowCutInfoList[cutOffsetObjIndex]; + //@ts-ignore let endOffset = cutUseOffsetObj.offset + cutUseOffsetObj.size; let sliceData = mergeData.slice( + //@ts-ignore cutUseOffsetObj.offset - searchDataInfo[0].startOffsetSize, endOffset - searchDataInfo[0].startOffsetSize ); @@ -819,7 +891,7 @@ async function handleJsonTypeBySplitLongTrace( ): Promise<[number, number, number, Uint8Array]> { let needCutMessage = receiveData.data as Array<{ offset: number; size: number }>; let startOffset = needCutMessage[0].offset; - let nowCutInfoList: Array = []; + let nowCutInfoList: Array = []; let isBeforeCutFinish = false; for (let needCutIndex = 0; needCutIndex < needCutMessage.length; needCutIndex++) { let cutInfo = needCutMessage[needCutIndex]; @@ -830,6 +902,7 @@ async function handleJsonTypeBySplitLongTrace( } if (cutInfo.offset + cutInfo.size - startOffset >= maxSize * 10 || needCutIndex === needCutMessage.length - 1) { nowCutInfoList.push(cutInfo); + //@ts-ignore let nowStartCutOffset = nowCutInfoList[0].offset; let nowEndCutOffset = cutInfo.offset + cutInfo.size; let searchDataInfo = allIndexDataList.filter( @@ -1033,9 +1106,11 @@ self.onmessage = async (e: MessageEvent): Promise => { } }; -function indexedDataToBufferData(sourceData: any): Uint8Array { +function indexedDataToBufferData(sourceData: unknown): Uint8Array { let uintArrayLength = 0; - let uintDataList = sourceData.map((item: any) => { + //@ts-ignore + let uintDataList = sourceData.map((item: unknown) => { + //@ts-ignore let currentBufData = new Uint8Array(item.buf); uintArrayLength += currentBufData.length; return currentBufData; @@ -1095,13 +1170,17 @@ async function splitFileAndSaveArkTs( const splitFileAndSave = async ( timStamp: number, - fileInfo: any, + fileInfo: unknown, pageNum: number, - splitReqBufferAddr?: any + splitReqBufferAddr?: unknown ): Promise => { + //@ts-ignore let fileType = fileInfo.fileType; + //@ts-ignore let fileSize = fileInfo.size; + //@ts-ignore let startIndex = fileInfo.startIndex; + //@ts-ignore let endIndex = fileInfo.endIndex; let queryStartIndex = startIndex; let queryEndIndex = startIndex; @@ -1118,7 +1197,9 @@ const splitFileAndSave = async ( let range = getRange(timStamp, fileType, queryStartIndex, queryEndIndex); let res = await getIndexedDBQueryData(indexDB, range); queryStartIndex = queryEndIndex + 1; + //@ts-ignore for (let i = 0; i < res.length; i++) { + //@ts-ignore let arrayBuffer = res[i]; let uint8Array = new Uint8Array(arrayBuffer.buf); let cutFileSize = 0; @@ -1156,7 +1237,7 @@ const splitFileAndSave = async ( } }; -async function getIndexedDBQueryData(db: IDBDatabase, range: IDBKeyRange): Promise { +async function getIndexedDBQueryData(db: IDBDatabase, range: IDBKeyRange): Promise { const transaction = db.transaction(STORE_NAME, 'readonly'); const store = transaction.objectStore(STORE_NAME); const index = store.index('QueryCompleteFile'); @@ -1170,16 +1251,19 @@ function execLongTraceSplitFileByModule( resultFileSize: number, cutFileSize: number, uint8Array: Uint8Array, - splitReqBufferAddr?: any + splitReqBufferAddr?: unknown ): [number, number] { const sliceLen = Math.min(uint8Array.length - cutFileSize, REQ_BUF_SIZE); const dataSlice = uint8Array.subarray(cutFileSize, cutFileSize + sliceLen); + //@ts-ignore wasmModule.HEAPU8.set(dataSlice, splitReqBufferAddr); cutFileSize += sliceLen; resultFileSize += sliceLen; if (resultFileSize >= fileSize) { + //@ts-ignore wasmModule._TraceStreamerLongTraceSplitFileEx(sliceLen, 1, pageNum); } else { + //@ts-ignore wasmModule._TraceStreamerLongTraceSplitFileEx(sliceLen, 0, pageNum); } return [cutFileSize, resultFileSize]; @@ -1192,7 +1276,7 @@ function setArg( saveStartOffset: number, saveIndex: number, timStamp: number -): any { +): unknown { return { buf: remnantArray, id: `${fileType}_new_${timStamp}_${pageNum}_${saveIndex}`, @@ -1220,14 +1304,16 @@ enum DataTypeEnum { let uploadSoActionId: string = ''; let uploadFileIndex: number = 0; -let uploadSoCallbackFn: any; +let uploadSoCallbackFn: unknown; let soFileList: Array = []; const failedArray: Array = []; const uploadSoFile = async (file: File | null): Promise => { if (file) { let fileNameBuffer: Uint8Array | null = enc.encode(file.webkitRelativePath); let fileNameLength = fileNameBuffer.length; + //@ts-ignore let addr = wasmModule._InitFileName(uploadSoCallbackFn, fileNameBuffer.length); + //@ts-ignore wasmModule.HEAPU8.set(fileNameBuffer, addr); let writeSize = 0; let upRes = -1; @@ -1237,8 +1323,10 @@ const uploadSoFile = async (file: File | null): Promise => { let buffer: ArrayBuffer | null = await blob.arrayBuffer(); let data: Uint8Array | null = new Uint8Array(buffer); let size = file.size; + //@ts-ignore wasmModule.HEAPU8.set(data, reqBufferAddr); writeSize += sliceLen; + //@ts-ignore upRes = wasmModule._TraceStreamerDownloadELFEx(size, fileNameLength, sliceLen, 1); data = null; buffer = null; @@ -1251,6 +1339,7 @@ const uploadSoFile = async (file: File | null): Promise => { }; const uploadSoCallBack = (heapPtr: number, size: number, isFinish: number): void => { + //@ts-ignore let out: Uint8Array | null = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); if (out) { let res = dec.decode(out); @@ -1344,24 +1433,30 @@ function cutFileByRange(e: MessageEvent): void { let cutLeftTs = e.data.leftTs; let cutRightTs = e.data.rightTs; let uint8Array = new Uint8Array(e.data.buffer); - let resultBuffer: Array = []; + let resultBuffer: Array = []; let cutFileCallBack = cutFileCallBackFunc(resultBuffer, uint8Array, e); + //@ts-ignore splitReqBufferAddr = wasmModule._InitializeSplitFile(wasmModule.addFunction(cutFileCallBack, 'viiii'), REQ_BUF_SIZE); let cutTimeRange = `${cutLeftTs};${cutRightTs};`; let cutTimeRangeBuffer = enc.encode(cutTimeRange); + //@ts-ignore wasmModule.HEAPU8.set(cutTimeRangeBuffer, splitReqBufferAddr); + //@ts-ignore wasmModule._TraceStreamerSplitFileEx(cutTimeRangeBuffer.length); let cutFileSize = 0; let receiveFileResult = -1; while (cutFileSize < uint8Array.length) { const sliceLen = Math.min(uint8Array.length - cutFileSize, REQ_BUF_SIZE); const dataSlice = uint8Array.subarray(cutFileSize, cutFileSize + sliceLen); + //@ts-ignore wasmModule.HEAPU8.set(dataSlice, splitReqBufferAddr); cutFileSize += sliceLen; try { if (cutFileSize >= uint8Array.length) { + //@ts-ignore receiveFileResult = wasmModule._TraceStreamerReciveFileEx(sliceLen, 1); } else { + //@ts-ignore receiveFileResult = wasmModule._TraceStreamerReciveFileEx(sliceLen, 0); } } catch (error) { @@ -1379,8 +1474,9 @@ function cutFileByRange(e: MessageEvent): void { } } } -function cutFileCallBackFunc(resultBuffer: Array, uint8Array: Uint8Array, e: MessageEvent): Function { +function cutFileCallBackFunc(resultBuffer: Array, uint8Array: Uint8Array, e: MessageEvent): Function { return (heapPtr: number, size: number, fileType: number, isEnd: number) => { + //@ts-ignore let out: Uint8Array = wasmModule.HEAPU8.slice(heapPtr, heapPtr + size); if (FileTypeEnum.data === fileType) { resultBuffer.push(out); @@ -1389,11 +1485,15 @@ function cutFileCallBackFunc(resultBuffer: Array, uint8Array: Uint8Array, e resultBuffer.push(cutBuffer); } if (isEnd) { + //@ts-ignore const cutResultFileLength = resultBuffer.reduce((total, obj) => total + obj.length, 0); + //@ts-ignore let cutBuffer = new Uint8Array(cutResultFileLength); let offset = 0; resultBuffer.forEach((item) => { + //@ts-ignore cutBuffer.set(item, offset); + //@ts-ignore offset += item.length; }); resultBuffer.length = 0; @@ -1413,34 +1513,44 @@ function cutFileCallBackFunc(resultBuffer: Array, uint8Array: Uint8Array, e }; } -function createView(sql: string): any { +function createView(sql: string): unknown { let array = enc.encode(sql); + //@ts-ignore wasmModule.HEAPU8.set(array, reqBufferAddr); + //@ts-ignore let res = wasmModule._TraceStreamerSqlOperateEx(array.length); return res; } -function query(name: string, sql: string, params: any): void { +function query(name: string, sql: string, params: unknown): void { if (params) { - Reflect.ownKeys(params).forEach((key: any) => { + Reflect.ownKeys(params).forEach((key: unknown) => { + //@ts-ignore if (typeof params[key] === 'string') { + //@ts-ignore sql = sql.replace(new RegExp(`\\${key}`, 'g'), `'${params[key]}'`); } else { + //@ts-ignore sql = sql.replace(new RegExp(`\\${key}`, 'g'), params[key]); } }); } let sqlUintArray = enc.encode(sql); + //@ts-ignore wasmModule.HEAPU8.set(sqlUintArray, reqBufferAddr); + //@ts-ignore wasmModule._TraceStreamerSqlQueryEx(sqlUintArray.length); } -function querySdk(name: string, sql: string, sdkParams: any, action: string): void { +function querySdk(name: string, sql: string, sdkParams: unknown, action: string): void { if (sdkParams) { - Reflect.ownKeys(sdkParams).forEach((key: any) => { + Reflect.ownKeys(sdkParams).forEach((key: unknown) => { + //@ts-ignore if (typeof sdkParams[key] === 'string') { + //@ts-ignore sql = sql.replace(new RegExp(`\\${key}`, 'g'), `'${sdkParams[key]}'`); } else { + //@ts-ignore sql = sql.replace(new RegExp(`\\${key}`, 'g'), sdkParams[key]); } }); @@ -1458,7 +1568,9 @@ function querySdk(name: string, sql: string, sdkParams: any, action: string): vo function queryMetric(name: string): void { let metricArray = enc.encode(name); + //@ts-ignore wasmModule.HEAPU8.set(metricArray, reqBufferAddr); + //@ts-ignore wasmModule._TraceStreamerSqlMetricsQuery(metricArray.length); } @@ -1478,7 +1590,7 @@ function openDB(): Promise { function queryDataFromIndexeddb(getRequest: IDBRequest): Promise { return new Promise((resolve, reject) => { - let results: any[] = []; + let results: unknown[] = []; getRequest.onerror = (event): void => { // @ts-ignore reject(event.target.error); @@ -1497,7 +1609,7 @@ function queryDataFromIndexeddb(getRequest: IDBRequest { +function addDataToIndexeddb(db: IDBDatabase, value: unknown, key?: IDBValidKey): Promise { return new Promise((resolve, reject) => { const transaction = db.transaction(STORE_NAME, 'readwrite'); const objectStore = transaction.objectStore(STORE_NAME); diff --git a/ide/src/trace/database/data-trafic/CpuDataReceiver.ts b/ide/src/trace/database/data-trafic/CpuDataReceiver.ts index f4efdf5e394231526c6b41134a6e76ccf4b2cdf2..e7478ec0529bd531e7bfb8423430b19471447912 100644 --- a/ide/src/trace/database/data-trafic/CpuDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/CpuDataReceiver.ts @@ -86,6 +86,7 @@ export function searchDataHandler(data: any): void { let tidArr = data.params.tidArr as number[]; for (let value of Array.from(cpuList.values())) { res.push( + //@ts-ignore ...value.filter((cpuData) => pidArr.includes(cpuData.pid || cpuData.processId) || tidArr.includes(cpuData.tid)) ); } diff --git a/ide/src/trace/database/data-trafic/NativeMemoryDataSender.ts b/ide/src/trace/database/data-trafic/NativeMemoryDataSender.ts index fd03bf031021c998d1156ab929dc35b7ad9813b6..4f90ca91fd25c8fedbbdc006e71563bdeaa62135 100644 --- a/ide/src/trace/database/data-trafic/NativeMemoryDataSender.ts +++ b/ide/src/trace/database/data-trafic/NativeMemoryDataSender.ts @@ -14,15 +14,15 @@ import { QueryEnum, TraficEnum } from './utils/QueryEnum'; import { threadPool } from '../SqlLite'; import { TraceRow } from '../../component/trace/base/TraceRow'; -export function nativeMemoryChartDataSender( - row: TraceRow, +export function nativeMemoryChartDataSender(//@ts-ignore + row: TraceRow, setting: { eventType: number; ipid: number; model: string; drawType: number; } -): Promise { +): Promise { return new Promise((resolve, reject) => { threadPool.submitProto( QueryEnum.NativeMemoryChartData, @@ -37,14 +37,14 @@ export function nativeMemoryChartDataSender( ipid: setting.ipid, trafic: TraficEnum.SharedArrayBuffer, }, - (res: any, len: number): void => { + (res: unknown, len: number): void => { resolve(arrayBufferHandler(res, len)); } ); }); } -export function nativeMemoryChartDataCacheSender(processes: Array, model: string): Promise { +export function nativeMemoryChartDataCacheSender(processes: Array, model: string): Promise { return new Promise((resolve, reject) => { threadPool.submitProto( model === 'native_hook' ? QueryEnum.NativeMemoryChartCacheNormal : QueryEnum.NativeMemoryChartCacheStatistic, @@ -57,30 +57,30 @@ export function nativeMemoryChartDataCacheSender(processes: Array, model trafic: TraficEnum.SharedArrayBuffer, isCache: true, }, - (res: any, len: number): void => { + (res: unknown, len: number): void => { resolve('ok'); } ); }); } -function arrayBufferHandler(res: any, len: number): unknown[] { - let outArr: any[] = []; - let startTime = new Float64Array(res.startTime); - let dur = new Float64Array(res.dur); - let density = new Int32Array(res.density); +function arrayBufferHandler(res: unknown, len: number): unknown[] { + let outArr: unknown[] = [];//@ts-ignore + let startTime = new Float64Array(res.startTime);//@ts-ignore + let dur = new Float64Array(res.dur);//@ts-ignore + let density = new Int32Array(res.density);//@ts-ignore let heapSize = new Int32Array(res.heapSize); for (let i = 0; i < len; i++) { outArr.push({ startTime: startTime[i], dur: dur[i], heapsize: heapSize[i], - density: density[i], - maxHeapSize: res.maxSize, - maxDensity: res.maxDensity, - minHeapSize: res.minSize, + density: density[i],//@ts-ignore + maxHeapSize: res.maxSize,//@ts-ignore + maxDensity: res.maxDensity,//@ts-ignore + minHeapSize: res.minSize,//@ts-ignore minDensity: res.minDensity, - } as any); + } as unknown); } return outArr; } diff --git a/ide/src/trace/database/data-trafic/SliceReceiver.ts b/ide/src/trace/database/data-trafic/SliceReceiver.ts index dadc332852459a2dd4ebfb092b311d2b734633c7..de35400fadbadd6674e122793c98016332c9f139 100644 --- a/ide/src/trace/database/data-trafic/SliceReceiver.ts +++ b/ide/src/trace/database/data-trafic/SliceReceiver.ts @@ -13,7 +13,7 @@ import { cpuList, processList, sliceList, threadStateList } from './utils/AllMemoryCache'; -export const sliceSqlMem = (args: any): string => { +export const sliceSqlMem = (args: unknown): string => { return ` SELECT B.pid, B.cpu, @@ -21,44 +21,47 @@ export const sliceSqlMem = (args: any): string => { B.itid as id, B.dur AS dur, B.state, - B.ts - ${args.recordStartNS} AS startTime, + B.ts - ${//@ts-ignore + args.recordStartNS} AS startTime, ifnull(B.arg_setid, -1) as argSetId from thread_state AS B - where B.itid is not null and B.ts + ifnull(B.dur, 0) < ${args.recordEndNS}`; + where B.itid is not null and B.ts + ifnull(B.dur, 0) < ${//@ts-ignore + args.recordEndNS}`; }; -export function sliceReceiver(data: any, proc: Function): void { +export function sliceReceiver(data: unknown, proc: Function): void { let count = { cpu: new Map(), }; sliceList.clear(); cpuList.clear(); processList.clear(); - threadStateList.clear(); - let list: any[] = proc(sliceSqlMem(data.params)); + threadStateList.clear();//@ts-ignore + let list: unknown[] = proc(sliceSqlMem(data.params)); sliceList.set(0, list); for (let i = 0; i < list.length; i++) { - let slice = list[i]; - if (slice.cpu !== null && slice.cpu !== undefined) { - if (cpuList.has(slice.cpu)) { + let slice = list[i];//@ts-ignore + if (slice.cpu !== null && slice.cpu !== undefined) {//@ts-ignore + if (cpuList.has(slice.cpu)) {//@ts-ignore let arr = cpuList.get(slice.cpu) || []; let last = arr[arr.length - 1]; - if (last && (last.dur === -1 || last.dur === null || last.dur === undefined)) { + //@ts-ignore + if (last && (last.dur === -1 || last.dur === null || last.dur === undefined)) {//@ts-ignore last.dur = slice.startTime - last.startTime; - } + }//@ts-ignore cpuList.get(slice.cpu)!.push(slice); - } else { + } else {//@ts-ignore cpuList.set(slice.cpu, [slice]); } - } - if (slice.pid >= 0 && slice.cpu !== null && slice.cpu !== undefined) { - if (processList.has(slice.pid)) { + }//@ts-ignore + if (slice.pid >= 0 && slice.cpu !== null && slice.cpu !== undefined) {//@ts-ignore + if (processList.has(slice.pid)) {//@ts-ignore processList.get(slice.pid)!.push(slice); - } else { + } else {//@ts-ignore processList.set(slice.pid, [slice]); } - } - if (slice.pid >= 0 && slice.tid >= 0) { + }//@ts-ignore + if (slice.pid >= 0 && slice.tid >= 0) {//@ts-ignore let key = `${slice.pid}-${slice.tid}`; if (threadStateList.has(key)) { threadStateList.get(key)!.push(slice); @@ -69,9 +72,9 @@ export function sliceReceiver(data: any, proc: Function): void { } for (let key of cpuList.keys()) { let arr = cpuList.get(key) || []; - let last = arr[arr.length - 1]; - if (last && (last.dur === -1 || last.dur === null || last.dur === undefined)) { - let totalNs = data.params.recordEndNS - data.params.recordStartNS; + let last = arr[arr.length - 1];//@ts-ignore + if (last && (last.dur === -1 || last.dur === null || last.dur === undefined)) {//@ts-ignore + let totalNs = data.params.recordEndNS - data.params.recordStartNS;//@ts-ignore last.dur = totalNs - last.startTime; } count.cpu.set(key, arr.length); @@ -79,8 +82,8 @@ export function sliceReceiver(data: any, proc: Function): void { postMsg(data, count); } -export function sliceSPTReceiver(data: any) { - if (data && data.params.func) { +export function sliceSPTReceiver(data: unknown) {//@ts-ignore + if (data && data.params.func) {//@ts-ignore switch (data.params.func) { case 'spt-getPTS': getPTS(data); @@ -95,12 +98,12 @@ export function sliceSPTReceiver(data: any) { } } -function postMsg(data: any, res: any): void { +function postMsg(data: unknown, res: unknown): void { (self as unknown as Worker).postMessage( - { - id: data.id, + {//@ts-ignore + id: data.id,//@ts-ignore action: data.action, - results: res, + results: res,//@ts-ignore len: res.length, transfer: false, }, @@ -108,86 +111,86 @@ function postMsg(data: any, res: any): void { ); } -function getSPT(data: any): void { +function getSPT(data: unknown): void { let threadSlice = sliceList.get(0) || []; let sptFilter = threadSlice.filter( - (it) => - Math.max(data.params.leftNs, it.startTime!) < Math.min(data.params.rightNs, it.startTime! + it.dur!) && + (it) =>//@ts-ignore + Math.max(data.params.leftNs, it.startTime!) < Math.min(data.params.rightNs, it.startTime! + it.dur!) &&//@ts-ignore (it.cpu === null || it.cpu === undefined || data.params.cpus.includes(it.cpu)) ); - let group: any = {}; + let group: unknown = {}; sptFilter.forEach((slice) => { - let item = { + let item = {//@ts-ignore title: `T-${slice.tid}`, - count: 1, - state: slice.state, - pid: slice.pid, - tid: slice.tid, - minDuration: slice.dur || 0, - maxDuration: slice.dur || 0, - wallDuration: slice.dur || 0, + count: 1,//@ts-ignore + state: slice.state,//@ts-ignore + pid: slice.pid,//@ts-ignore + tid: slice.tid,//@ts-ignore + minDuration: slice.dur || 0,//@ts-ignore + maxDuration: slice.dur || 0,//@ts-ignore + wallDuration: slice.dur || 0,//@ts-ignore avgDuration: `${slice.dur}`, - }; + };//@ts-ignore if (group[`${slice.state}`]) { setSPTData(group, slice, item); - } else { - group[`${slice.state}`] = { + } else {//@ts-ignore + group[`${slice.state}`] = {//@ts-ignore title: `S-${slice.state}`, - count: 1, - state: slice.state, - minDuration: slice.dur || 0, - maxDuration: slice.dur || 0, - wallDuration: slice.dur || 0, + count: 1,//@ts-ignore + state: slice.state,//@ts-ignore + minDuration: slice.dur || 0,//@ts-ignore + maxDuration: slice.dur || 0,//@ts-ignore + wallDuration: slice.dur || 0,//@ts-ignore avgDuration: `${slice.dur}`, children: [ - { + {//@ts-ignore title: `P-${slice.pid}`, - count: 1, - state: slice.state, - pid: slice.pid, - minDuration: slice.dur || 0, - maxDuration: slice.dur || 0, - wallDuration: slice.dur || 0, + count: 1,//@ts-ignore + state: slice.state,//@ts-ignore + pid: slice.pid,//@ts-ignore + minDuration: slice.dur || 0,//@ts-ignore + maxDuration: slice.dur || 0,//@ts-ignore + wallDuration: slice.dur || 0,//@ts-ignore avgDuration: `${slice.dur}`, children: [item], }, ], }; } - }); + });//@ts-ignore postMsg(data, Object.values(group)); } -function getPTS(data: any): void { +function getPTS(data: unknown): void { let threadSlice = sliceList.get(0) || []; let ptsFilter = threadSlice.filter( - (it) => - Math.max(data.params.leftNs, it.startTime!) < Math.min(data.params.rightNs, it.startTime! + it.dur!) && + (it) =>//@ts-ignore + Math.max(data.params.leftNs, it.startTime!) < Math.min(data.params.rightNs, it.startTime! + it.dur!) &&//@ts-ignore (it.cpu === null || it.cpu === undefined || data.params.cpus.includes(it.cpu)) ); - let group: any = {}; - ptsFilter.forEach((slice) => { + let group: unknown = {}; + ptsFilter.forEach((slice) => {//@ts-ignore let title = `S-${slice.state}`; - let item = setStateData(slice, title); - if (group[`${slice.pid}`]) { + let item = setStateData(slice, title);//@ts-ignore + if (group[`${slice.pid}`]) {//@ts-ignore let process = group[`${slice.pid}`]; - process.count += 1; - process.wallDuration += slice.dur; - process.minDuration = Math.min(process.minDuration, slice.dur!); + process.count += 1;//@ts-ignore + process.wallDuration += slice.dur;//@ts-ignore + process.minDuration = Math.min(process.minDuration, slice.dur!);//@ts-ignore process.maxDuration = Math.max(process.maxDuration, slice.dur!); - process.avgDuration = (process.wallDuration / process.count).toFixed(2); - let thread = process.children.find((child: any) => child.title === `T-${slice.tid}`); + process.avgDuration = (process.wallDuration / process.count).toFixed(2);//@ts-ignore + let thread = process.children.find((child: unknown) => child.title === `T-${slice.tid}`); if (thread) { - thread.count += 1; - thread.wallDuration += slice.dur; - thread.minDuration = Math.min(thread.minDuration, slice.dur!); + thread.count += 1;//@ts-ignore + thread.wallDuration += slice.dur;//@ts-ignore + thread.minDuration = Math.min(thread.minDuration, slice.dur!);//@ts-ignore thread.maxDuration = Math.max(thread.maxDuration, slice.dur!); - thread.avgDuration = (thread.wallDuration / thread.count).toFixed(2); - let state = thread.children.find((child: any) => child.title === `S-${slice.state}`); + thread.avgDuration = (thread.wallDuration / thread.count).toFixed(2);//@ts-ignore + let state = thread.children.find((child: unknown) => child.title === `S-${slice.state}`); if (state) { - state.count += 1; - state.wallDuration += slice.dur; - state.minDuration = Math.min(state.minDuration, slice.dur!); + state.count += 1;//@ts-ignore + state.wallDuration += slice.dur;//@ts-ignore + state.minDuration = Math.min(state.minDuration, slice.dur!);//@ts-ignore state.maxDuration = Math.max(state.maxDuration, slice.dur!); state.avgDuration = (state.wallDuration / state.count).toFixed(2); } else { @@ -197,67 +200,67 @@ function getPTS(data: any): void { let processChild = setThreadData(slice, item); process.children.push(processChild); } - } else { + } else {//@ts-ignore group[`${slice.pid}`] = setProcessData(slice, item); } - }); + });//@ts-ignore postMsg(data, Object.values(group)); } -function sptGetCpuPriorityByTime(data: any): void { +function sptGetCpuPriorityByTime(data: unknown): void { let threadSlice = sliceList.get(0) || []; - const result = threadSlice.filter((item: any) => { + const result = threadSlice.filter((item: unknown) => {//@ts-ignore return !(item.startTime + item.dur < data.params.leftNs || item.startTime! > data.params.rightNs); }); postMsg(data, result); } -function setStateData(slice: any, title: string): any { +function setStateData(slice: unknown, title: string): unknown { return { title: title, - count: 1, - state: slice.state, - tid: slice.tid, - pid: slice.pid, - minDuration: slice.dur || 0, - maxDuration: slice.dur || 0, - wallDuration: slice.dur || 0, + count: 1,//@ts-ignore + state: slice.state,//@ts-ignore + tid: slice.tid,//@ts-ignore + pid: slice.pid,//@ts-ignore + minDuration: slice.dur || 0,//@ts-ignore + maxDuration: slice.dur || 0,//@ts-ignore + wallDuration: slice.dur || 0,//@ts-ignore avgDuration: `${slice.dur}`, }; } -function setThreadData(slice: any, item: any): any { - return { +function setThreadData(slice: unknown, item: unknown): unknown { + return {//@ts-ignore title: `T-${slice.tid}`, - count: 1, - tid: slice.tid, - pid: slice.pid, - minDuration: slice.dur || 0, - maxDuration: slice.dur || 0, - wallDuration: slice.dur || 0, + count: 1,//@ts-ignore + tid: slice.tid,//@ts-ignore + pid: slice.pid,//@ts-ignore + minDuration: slice.dur || 0,//@ts-ignore + maxDuration: slice.dur || 0,//@ts-ignore + wallDuration: slice.dur || 0,//@ts-ignore avgDuration: `${slice.dur}`, children: [item], }; } -function setProcessData(slice: any, item: any): any { - return { +function setProcessData(slice: unknown, item: unknown): unknown { + return {//@ts-ignore title: `P-${slice.pid}`, - count: 1, - pid: slice.pid, - minDuration: slice.dur || 0, - maxDuration: slice.dur || 0, - wallDuration: slice.dur || 0, + count: 1,//@ts-ignore + pid: slice.pid,//@ts-ignore + minDuration: slice.dur || 0,//@ts-ignore + maxDuration: slice.dur || 0,//@ts-ignore + wallDuration: slice.dur || 0,//@ts-ignore avgDuration: `${slice.dur}`, children: [ - { + {//@ts-ignore title: `T-${slice.tid}`, - count: 1, - pid: slice.pid, - tid: slice.tid, - minDuration: slice.dur || 0, - maxDuration: slice.dur || 0, - wallDuration: slice.dur || 0, + count: 1,//@ts-ignore + pid: slice.pid,//@ts-ignore + tid: slice.tid,//@ts-ignore + minDuration: slice.dur || 0,//@ts-ignore + maxDuration: slice.dur || 0,//@ts-ignore + wallDuration: slice.dur || 0,//@ts-ignore avgDuration: `${slice.dur}`, children: [item], }, @@ -265,39 +268,39 @@ function setProcessData(slice: any, item: any): any { }; } -function setSPTData(group: any, slice: any, item: any): void { +function setSPTData(group: unknown, slice: unknown, item: unknown): void {//@ts-ignore let state = group[`${slice.state}`]; - state.count += 1; - state.wallDuration += slice.dur; - state.minDuration = Math.min(state.minDuration, slice.dur!); + state.count += 1;//@ts-ignore + state.wallDuration += slice.dur;//@ts-ignore + state.minDuration = Math.min(state.minDuration, slice.dur!);//@ts-ignore state.maxDuration = Math.max(state.maxDuration, slice.dur!); - state.avgDuration = (state.wallDuration / state.count).toFixed(2); - let process = state.children.find((child: any) => child.title === `P-${slice.pid}`); + state.avgDuration = (state.wallDuration / state.count).toFixed(2);//@ts-ignore + let process = state.children.find((child: unknown) => child.title === `P-${slice.pid}`); if (process) { - process.count += 1; - process.wallDuration += slice.dur; - process.minDuration = Math.min(process.minDuration, slice.dur!); + process.count += 1;//@ts-ignore + process.wallDuration += slice.dur;//@ts-ignore + process.minDuration = Math.min(process.minDuration, slice.dur!);//@ts-ignore process.maxDuration = Math.max(process.maxDuration, slice.dur!); - process.avgDuration = (process.wallDuration / process.count).toFixed(2); - let thread = process.children.find((child: any) => child.title === `T-${slice.tid}`); + process.avgDuration = (process.wallDuration / process.count).toFixed(2);//@ts-ignore + let thread = process.children.find((child: unknown) => child.title === `T-${slice.tid}`); if (thread) { - thread.count += 1; - thread.wallDuration += slice.dur; - thread.minDuration = Math.min(thread.minDuration, slice.dur!); + thread.count += 1;//@ts-ignore + thread.wallDuration += slice.dur;//@ts-ignore + thread.minDuration = Math.min(thread.minDuration, slice.dur!);//@ts-ignore thread.maxDuration = Math.max(thread.maxDuration, slice.dur!); thread.avgDuration = (thread.wallDuration / thread.count).toFixed(2); } else { process.children.push(item); } } else { - state.children.push({ + state.children.push({//@ts-ignore title: `P-${slice.pid}`, - count: 1, - state: slice.state, - pid: slice.pid, - minDuration: slice.dur || 0, - maxDuration: slice.dur || 0, - wallDuration: slice.dur || 0, + count: 1,//@ts-ignore + state: slice.state,//@ts-ignore + pid: slice.pid,//@ts-ignore + minDuration: slice.dur || 0,//@ts-ignore + maxDuration: slice.dur || 0,//@ts-ignore + wallDuration: slice.dur || 0,//@ts-ignore avgDuration: `${slice.dur}`, children: [item], }); diff --git a/ide/src/trace/database/data-trafic/SliceSender.ts b/ide/src/trace/database/data-trafic/SliceSender.ts index 270573a8212099343729a6b131be6d085757a9bb..3fefc5c5db96c21983c0d20757d0fb7cc2da43bb 100644 --- a/ide/src/trace/database/data-trafic/SliceSender.ts +++ b/ide/src/trace/database/data-trafic/SliceSender.ts @@ -15,7 +15,7 @@ import { QueryEnum, TraficEnum } from './utils/QueryEnum'; import { threadPool } from '../SqlLite'; import { TraceRow } from '../../component/trace/base/TraceRow'; -export function sliceSender(): Promise { +export function sliceSender(): Promise { let trafic: number = TraficEnum.Memory; return new Promise((resolve): void => { threadPool.submitProto( @@ -27,14 +27,14 @@ export function sliceSender(): Promise { recordStartNS: window.recordStartNS, recordEndNS: window.recordEndNS, }, - (res: any): void => { + (res: unknown): void => { resolve(res); } ); }); } -export function sliceSPTSender(leftNs: number, rightNs: number, cpus: Array, func: string): Promise { +export function sliceSPTSender(leftNs: number, rightNs: number, cpus: Array, func: string): Promise { return new Promise((resolve): void => { threadPool.submitProto( QueryEnum.SliceSPTData, @@ -45,7 +45,8 @@ export function sliceSPTSender(leftNs: number, rightNs: number, cpus: Array { + (res: unknown, len: number, transfer: boolean): void => { + //@ts-ignore resolve(res); } ); diff --git a/ide/src/trace/database/data-trafic/VirtualMemoryDataReceiver.ts b/ide/src/trace/database/data-trafic/VirtualMemoryDataReceiver.ts index 35805352115764b8b151b1ce78286340e3482ece..9e752e49a74588b92fe85df687c2f524deb0dea3 100644 --- a/ide/src/trace/database/data-trafic/VirtualMemoryDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/VirtualMemoryDataReceiver.ts @@ -13,64 +13,73 @@ import { TraficEnum } from './utils/QueryEnum'; -export const chartVirtualMemoryDataSql = (args: any): string => { +export const chartVirtualMemoryDataSql = + (args: unknown): string => { return ` - select ts - ${args.recordStartNS} as startTime, + select ts - ${// @ts-ignore + args.recordStartNS} as startTime, filter_id as filterId, value from sys_mem_measure - where filter_id = ${args.filterId}`; + where filter_id = ${// @ts-ignore + args.filterId}`; }; -export const chartVirtualMemoryDataProtoSql = (args: any): string => { +export const chartVirtualMemoryDataProtoSql = +(args: unknown): string => { return ` - select ts - ${args.recordStartNS} as startTime, + select ts - ${// @ts-ignore + args.recordStartNS} as startTime, filter_id as filterId, value, - ((ts - ${args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)})) AS px + ((ts - ${// @ts-ignore + args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)})) AS px from sys_mem_measure - where filter_id = ${args.filterId} - and startTime + (ifnull(dur,0)) >= ${Math.floor(args.startNS)} - and startTime <= ${Math.floor(args.endNS)} + where filter_id = ${// @ts-ignore + args.filterId} + and startTime + (ifnull(dur,0)) >= ${Math.floor(// @ts-ignore + args.startNS)} + and startTime <= ${Math.floor(// @ts-ignore + args.endNS)} group by px;`; }; -let vmList: Array = []; -let vmListMap = new Map>(); +let vmList: Array = [];// @ts-ignore +let vmListMap = new Map>(); export function resetVM(): void { vmList = []; vmListMap.clear(); } -export function virtualMemoryDataReceiver(data: any, proc: Function): void { - if (data.params.trafic === TraficEnum.Memory) { - if (!vmListMap.has(data.params.filterId)) { - vmList = proc(chartVirtualMemoryDataSql(data.params)); +export function virtualMemoryDataReceiver(data: unknown, proc: Function): void {// @ts-ignore + if (data.params.trafic === TraficEnum.Memory) {// @ts-ignore + if (!vmListMap.has(data.params.filterId)) {// @ts-ignore + vmList = proc(chartVirtualMemoryDataSql(data.params));// @ts-ignore vmListMap.set(data.params.filterId, vmList); - } - let list = vmListMap.get(data.params.filterId) || []; + }// @ts-ignore + let list = vmListMap.get(data.params.filterId) || [];// @ts-ignore arrayBufferHandler(data, list, data.params.trafic !== TraficEnum.SharedArrayBuffer); - } else { + } else {// @ts-ignore let sql = chartVirtualMemoryDataProtoSql(data.params); - let res = proc(sql); + let res = proc(sql);// @ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer); } } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { - let startTime = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime); - let value = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.value); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void {// @ts-ignore + let startTime = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime);// @ts-ignore + let value = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.value);// @ts-ignore let filterID = new Uint8Array(transfer ? res.length : data.params.sharedArrayBuffers.filterID); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.virtualMemData); - startTime[i] = it.startTime; - filterID[i] = it.filterId; + res.forEach((it, i) => {// @ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.virtualMemData);// @ts-ignore + startTime[i] = it.startTime;// @ts-ignore + filterID[i] = it.filterId;// @ts-ignore value[i] = it.value; }); (self as unknown as Worker).postMessage( - { - id: data.id, + {// @ts-ignore + id: data.id,// @ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/VirtualMemoryDataSender.ts b/ide/src/trace/database/data-trafic/VirtualMemoryDataSender.ts index dcc0a8f3bab401d27886f4235a1817217c130c6d..0a1b59c333c3601c2677f23c431b2c63749ce90d 100644 --- a/ide/src/trace/database/data-trafic/VirtualMemoryDataSender.ts +++ b/ide/src/trace/database/data-trafic/VirtualMemoryDataSender.ts @@ -43,16 +43,16 @@ export function virtualMemoryDataSender( filterId: filterId, sharedArrayBuffers: row.sharedArrayBuffers, }, - (res: any, len: number, transfer: boolean) => { + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(transfer ? res : row.sharedArrayBuffers, len)); } ); }); } -function arrayBufferHandler(buffers: any, len: number): VirtualMemoryStruct[] { - let filterID = new Uint8Array(buffers.filterID); - let value = new Int32Array(buffers.value); +function arrayBufferHandler(buffers: unknown, len: number): VirtualMemoryStruct[] {// @ts-ignore + let filterID = new Uint8Array(buffers.filterID);// @ts-ignore + let value = new Int32Array(buffers.value);// @ts-ignore let startTime = new Float64Array(buffers.startTime); let outArr: VirtualMemoryStruct[] = []; for (let i = 0; i < len; i++) { diff --git a/ide/src/trace/database/data-trafic/VmTrackerDataReceiver.ts b/ide/src/trace/database/data-trafic/VmTrackerDataReceiver.ts index 2aaa9b9bb5926233a0d071b32737d1ee4947670f..26e9cc9d7d9004c549d76c54d31e09a2057b8b54 100644 --- a/ide/src/trace/database/data-trafic/VmTrackerDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/VmTrackerDataReceiver.ts @@ -15,167 +15,218 @@ import { TraficEnum } from './utils/QueryEnum'; -export const chartSMapsDataSqlMem = (args: any): string => { - return `SELECT (A.timestamp - ${args.recordStartNS}) as startNs, - sum(${args.name}) * 1024 as value +export const chartSMapsDataSqlMem =// @ts-ignore + (args: unknown): string => { + return `SELECT (A.timestamp - ${// @ts-ignore + args.recordStartNS}) as startNs, + sum(${// @ts-ignore + args.name}) * 1024 as value FROM smaps A - WHERE A.timestamp < ${args.recordEndNS} + WHERE A.timestamp < ${// @ts-ignore + args.recordEndNS} GROUP by A.timestamp`; }; -export const chartDmaDataSqlMem = (args: any): string => { - return `SELECT (A.ts - ${args.recordStartNS}) as startNs, +export const chartDmaDataSqlMem = // @ts-ignore +(args: unknown): string => { + return `SELECT (A.ts - ${// @ts-ignore + args.recordStartNS}) as startNs, sum(A.size) as value FROM memory_dma A WHERE A.flag = 0 - AND ${args.ipid} = A.ipid - AND A.ts < ${args.recordEndNS} + AND ${// @ts-ignore + args.ipid} = A.ipid + AND A.ts < ${// @ts-ignore + args.recordEndNS} GROUP by A.ts`; }; -export const chartGpuMemoryDataSqlMem = (args: any): string => { - return ` SELECT (A.ts - ${args.recordStartNS}) as startNs, +export const chartGpuMemoryDataSqlMem =// @ts-ignore + (args: unknown): string => { + return ` SELECT (A.ts - ${// @ts-ignore + args.recordStartNS}) as startNs, sum(A.used_gpu_size) as value FROM memory_process_gpu A - WHERE ${args.ipid} = A.ipid - AND A.ts < ${args.recordEndNS} + WHERE ${// @ts-ignore + args.ipid} = A.ipid + AND A.ts < ${// @ts-ignore + args.recordEndNS} GROUP by A.ts`; }; -export const chartGpuResourceDataSqlMem = (args: any): string => { +export const chartGpuResourceDataSqlMem =// @ts-ignore + (args: unknown): string => { return `SELECT subquery1.startNs, (IFNULL(subquery1.totalSize, 0) - IFNULL(subquery2.size, 0)) AS value FROM - (SELECT (ts - ${args.recordStartNS}) AS startNs,SUM(total_size) AS totalSize + (SELECT (ts - ${// @ts-ignore + args.recordStartNS}) AS startNs,SUM(total_size) AS totalSize FROM memory_profile - WHERE ts between ${args.recordStartNS} and ${args.recordEndNS} + WHERE ts between ${// @ts-ignore + args.recordStartNS} and ${args.recordEndNS} GROUP BY ts) AS subquery1 LEFT JOIN - (SELECT (ts - ${args.recordStartNS}) AS startNs, SUM(size) AS size + (SELECT (ts - ${// @ts-ignore + args.recordStartNS}) AS startNs, SUM(size) AS size FROM memory_window_gpu - WHERE ts between ${args.recordStartNS} and ${args.recordEndNS} - AND category_name_id = ${args.scratchId} + WHERE ts between ${// @ts-ignore + args.recordStartNS} and ${args.recordEndNS} + AND category_name_id = ${// @ts-ignore + args.scratchId} GROUP BY ts) AS subquery2 ON subquery1.startNs = subquery2.startNs`; }; -export const chartGpuDataSqlMem = (args: any): string => { - return `select (ts - ${args.recordStartNS}) startNs, +export const chartGpuDataSqlMem =// @ts-ignore + (args: unknown): string => { + return `select (ts - ${// @ts-ignore + args.recordStartNS}) startNs, sum(value) * 1024 value from process_measure where filter_id = ( select id from process_measure_filter - where name = ${args.name} and ipid = ${args.ipid} + where name = ${// @ts-ignore + args.name} and ipid = ${args.ipid} ) - and ts between ${args.recordStartNS} AND ${args.recordEndNS} + and ts between ${// @ts-ignore + args.recordStartNS} AND ${args.recordEndNS} group by ts;`; }; -export const chartGpuTotalDataSqlMem = (args: any): string => { +export const chartGpuTotalDataSqlMem = +(args: unknown): string => {// @ts-ignore let moduleCondition = args.moduleId === null ? '' : `and module_name_id = ${args.moduleId}`; - return `select (ts - ${args.recordStartNS}) startNs, + return `select (ts - ${// @ts-ignore + args.recordStartNS}) startNs, sum(size) value from memory_window_gpu where window_name_id = 0 ${moduleCondition} - and ts < ${args.recordEndNS} + and ts < ${// @ts-ignore + args.recordEndNS} group by ts;`; }; -export const chartGpuWindowDataSqlMem = (args: any): string => { +export const chartGpuWindowDataSqlMem = // @ts-ignore +(args: unknown): string => {// @ts-ignore let moduleCondition = args.moduleId === null ? '' : `and module_name_id = ${args.moduleId}`; - return `select (ts - ${args.recordStartNS}) startNs, + return `select (ts - ${// @ts-ignore + args.recordStartNS}) startNs, sum(size) value from memory_window_gpu - where window_name_id = ${args.windowId} ${moduleCondition} - and ts < ${args.recordEndNS} + where window_name_id = ${// @ts-ignore + args.windowId} ${moduleCondition} + and ts < ${// @ts-ignore + args.recordEndNS} group by ts`; }; -export const chartShmDataSqlMem = (args: any): string => { - return `SELECT (A.ts - ${args.recordStartNS}) as startNs, +export const chartShmDataSqlMem = +(args: unknown): string => { + return `SELECT (A.ts - ${// @ts-ignore + args.recordStartNS}) as startNs, sum(A.size) as value FROM memory_ashmem A - where A.ipid = ${args.ipid} - AND A.ts < ${args.recordEndNS} + where A.ipid = ${// @ts-ignore + args.ipid} + AND A.ts < ${// @ts-ignore + args.recordEndNS} AND flag = 0 GROUP by A.ts`; }; -export const chartPurgeableDataSqlMem = (args: any): string => { - const pinSql = args.isPin ? ' AND a.ref_count > 0' : ''; +export const chartPurgeableDataSqlMem = +(args: unknown): string => {// @ts-ignore + const pinSql = args.isPin ? ' AND a.ref_count > 0' : '';// @ts-ignore const names = args.isPin ? " ('mem.purg_pin')" : "('mem.purg_sum')"; return `SELECT startNs, sum( value ) AS value - FROM (SELECT m.ts - ${args.recordStartNS} AS startNs, + FROM (SELECT m.ts - ${// @ts-ignore + args.recordStartNS} AS startNs, sum(m.value) AS value FROM process_measure m LEFT JOIN process_measure_filter f ON f.id = m.filter_id - WHERE m.ts < ${args.recordEndNS} + WHERE m.ts < ${// @ts-ignore + args.recordEndNS} AND f.name = ${names} - AND f.ipid = ${args.ipid} + AND f.ipid = ${// @ts-ignore + args.ipid} GROUP BY m.ts UNION ALL - SELECT a.ts - ${args.recordStartNS} AS startNs, + SELECT a.ts - ${// @ts-ignore + args.recordStartNS} AS startNs, sum( a.pss ) AS value FROM memory_ashmem a - WHERE a.ts < ${args.recordEndNS} + WHERE a.ts < ${// @ts-ignore + args.recordEndNS} AND a.flag = 0 - AND a.ipid = ${args.ipid} + AND a.ipid = ${// @ts-ignore + args.ipid} ${pinSql} GROUP BY a.ts) GROUP BY startNs`; }; -export const abilityPurgeablelDataSqlMem = (args: any): string => { - const pinCondition = args.isPin ? ' AND a.ref_count > 0' : ''; +export const abilityPurgeablelDataSqlMem = +(args: unknown): string => {// @ts-ignore + const pinCondition = args.isPin ? ' AND a.ref_count > 0' : '';// @ts-ignore const names = args.isPin ? " ('sys.mem.pined.purg')" : "('sys.mem.active.purg','sys.mem.inactive.purg')"; return `SELECT startNs, sum( value ) AS value - FROM (SELECT m.ts - ${args.recordStartNS} AS startNs, + FROM (SELECT m.ts - ${// @ts-ignore + args.recordStartNS} AS startNs, sum( m.value ) AS value FROM sys_mem_measure m LEFT JOIN sys_event_filter f ON f.id = m.filter_id - WHERE m.ts < ${args.recordEndNS} + WHERE m.ts < ${// @ts-ignore + args.recordEndNS} AND f.name IN ${names} GROUP BY m.ts UNION ALL - SELECT a.ts - ${args.recordStartNS} AS startNs, + SELECT a.ts - ${// @ts-ignore + args.recordStartNS} AS startNs, sum( a.size ) AS value FROM memory_ashmem a - WHERE a.ts < ${args.recordEndNS} + WHERE a.ts < ${// @ts-ignore + args.recordEndNS} AND a.flag = 0 ${pinCondition} GROUP BY a.ts ) GROUP BY startNs`; }; -export const abilityDmaDataSqlMem = (args: any): string => { - return `SELECT (A.ts - ${args.recordStartNS}) as startNs, +export const abilityDmaDataSqlMem = +(args: unknown): string => { + return `SELECT (A.ts - ${// @ts-ignore + args.recordStartNS}) as startNs, sum(A.size) as value, E.data as expTaskComm, A.flag as flag FROM memory_dma A left join data_dict as E on E.id=A.exp_task_comm_id WHERE A.flag = 0 - AND A.ts < ${args.recordEndNS} + AND A.ts < ${// @ts-ignore + args.recordEndNS} GROUP by A.ts;`; }; -export const abilityGpuMemoryDataSqlMem = (args: any): string => { +export const abilityGpuMemoryDataSqlMem = +(args: unknown): string => { return `SELECT - (A.ts - ${args.recordStartNS}) as startNs, + (A.ts - ${// @ts-ignore + args.recordStartNS}) as startNs, sum(A.used_gpu_size) as value FROM memory_process_gpu A - WHERE A.ts < ${args.recordEndNS} + WHERE A.ts < ${// @ts-ignore + args.recordEndNS} GROUP by A.ts;`; }; - -let sMapsList: Array = []; -let dmaList: Array = []; -let gpuMemoryList: Array = []; -let gpuList: Array = []; -let gpuResourceList: Array = []; -let gpuTotalList: Array = []; -let gpuWindowList: Array = []; -let shmList: Array = []; -let purgeableList: Array = []; -let sMapsMap = new Map>(); -let purgeableMap = new Map>(); -let gpuMap = new Map>(); -let abilityPurgeableMap: Map> = new Map(); -let abilityPurgeableList: Array = []; -let abilityDmaList: Array = []; -let abilityGpuMemoryList: Array = []; +// @ts-ignore +let sMapsList: Array = [];// @ts-ignore +let dmaList: Array = [];// @ts-ignore +let gpuMemoryList: Array = [];// @ts-ignore +let gpuList: Array = [];// @ts-ignore +let gpuResourceList: Array = [];// @ts-ignore +let gpuTotalList: Array = [];// @ts-ignore +let gpuWindowList: Array = [];// @ts-ignore +let shmList: Array = [];// @ts-ignore +let purgeableList: Array = [];// @ts-ignore +let sMapsMap = new Map>();// @ts-ignore +let purgeableMap = new Map>();// @ts-ignore +let gpuMap = new Map>();// @ts-ignore +let abilityPurgeableMap: Map> = new Map();// @ts-ignore +let abilityPurgeableList: Array = [];// @ts-ignore +let abilityDmaList: Array = [];// @ts-ignore +let abilityGpuMemoryList: Array = []; export function resetVmTracker(): void { sMapsList = []; @@ -199,121 +250,126 @@ export function resetAbility(): void { abilityPurgeableMap.clear(); } -export function sMapsDataReceiver(data: any, proc: Function): void { - if (!sMapsMap.has(data.params.name)) { - sMapsList = proc(chartSMapsDataSqlMem(data.params)); +export function sMapsDataReceiver(data: unknown, proc: Function): void {// @ts-ignore + if (!sMapsMap.has(data.params.name)) {// @ts-ignore + sMapsList = proc(chartSMapsDataSqlMem(data.params));// @ts-ignore sMapsMap.set(data.params.name, sMapsList); - } + }// @ts-ignore let list = sMapsMap.get(data.params.name) || []; arrayBufferHandler(data, list, true); } -export function dmaDataReceiver(data: any, proc: Function): void { - if (dmaList.length === 0) { +export function dmaDataReceiver(data: unknown, proc: Function): void { + if (dmaList.length === 0) {// @ts-ignore dmaList = proc(chartDmaDataSqlMem(data.params)); } arrayBufferHandler(data, dmaList, true); } -export function gpuMemoryDataReceiver(data: any, proc: Function): void { - if (gpuMemoryList.length === 0) { +export function gpuMemoryDataReceiver(data: unknown, proc: Function): void { + if (gpuMemoryList.length === 0) {// @ts-ignore gpuMemoryList = proc(chartGpuMemoryDataSqlMem(data.params)); } arrayBufferHandler(data, gpuMemoryList, true); } -export function gpuDataReceiver(data: any, proc: Function): void { - if (!gpuMap.has(data.params.name)) { - gpuList = proc(chartGpuDataSqlMem(data.params)); +export function gpuDataReceiver(data: unknown, proc: Function): void {// @ts-ignore + if (!gpuMap.has(data.params.name)) {// @ts-ignore + gpuList = proc(chartGpuDataSqlMem(data.params));// @ts-ignore gpuMap.set(data.params.name, gpuList); - } + }// @ts-ignore let list = gpuMap.get(data.params.name) || []; arrayBufferHandler(data, list, true); } -export function gpuResourceDataReceiver(data: any, proc: Function): void { - if (gpuResourceList.length === 0) { +export function gpuResourceDataReceiver(data: unknown, proc: Function): void { + if (gpuResourceList.length === 0) {// @ts-ignore gpuResourceList = proc(chartGpuResourceDataSqlMem(data.params)); } arrayBufferHandler(data, gpuResourceList, true); } -export function gpuTotalDataReceiver(data: any, proc: Function): void { - if (gpuTotalList.length === 0 || data.params.moduleId) { +export function gpuTotalDataReceiver(data: unknown, proc: Function): void {// @ts-ignore + if (gpuTotalList.length === 0 || data.params.moduleId) {// @ts-ignore gpuTotalList = proc(chartGpuTotalDataSqlMem(data.params)); } arrayBufferHandler(data, gpuTotalList, true); } -export function gpuWindowDataReceiver(data: any, proc: Function): void { - if (gpuWindowList.length === 0 || data.params.moduleId) { +export function gpuWindowDataReceiver(data: unknown, proc: Function): void {// @ts-ignore + if (gpuWindowList.length === 0 || data.params.moduleId) {// @ts-ignore gpuWindowList = proc(chartGpuWindowDataSqlMem(data.params)); } arrayBufferHandler(data, gpuWindowList, true); } -export function shmDataReceiver(data: any, proc: Function): void { - if (shmList.length === 0) { +export function shmDataReceiver(data: unknown, proc: Function): void { + if (shmList.length === 0) {// @ts-ignore shmList = proc(chartShmDataSqlMem(data.params)); } arrayBufferHandler(data, shmList, true); } -export function purgeableDataReceiver(data: any, proc: Function): void { +export function purgeableDataReceiver(data: unknown, proc: Function): void { let key: string = ''; - if (data.params.isPin) { + if (// @ts-ignore + data.params.isPin) { key = 'pin'; } else { key = 'total'; } - if (!purgeableMap.has(data.params.isPin)) { - purgeableList = proc(chartPurgeableDataSqlMem(data.params)); + if (!purgeableMap.has(// @ts-ignore + data.params.isPin)) { + purgeableList = proc(chartPurgeableDataSqlMem(// @ts-ignore + data.params)); purgeableMap.set(key, purgeableList); } let list = purgeableMap.get(key) || []; arrayBufferHandler(data, list, true); } -export function abilityPurgeableDataReceiver(data: any, proc: Function): void { +export function abilityPurgeableDataReceiver(data: unknown, proc: Function): void { let key = ''; - if (data.params.isPin) { + if (// @ts-ignore + data.params.isPin) { key = 'pin'; } else { key = 'total'; } if (!abilityPurgeableMap.has(key)) { - abilityPurgeableList = proc(abilityPurgeablelDataSqlMem(data.params)); + abilityPurgeableList = proc(abilityPurgeablelDataSqlMem(// @ts-ignore + data.params)); abilityPurgeableMap.set(key, abilityPurgeableList); } let abilityList = abilityPurgeableMap.get(key) || []; arrayBufferHandler(data, abilityList, true); } -export function abilityDmaDataReceiver(data: any, proc: Function): void { - if (abilityDmaList.length === 0) { +export function abilityDmaDataReceiver(data: unknown, proc: Function): void { + if (abilityDmaList.length === 0) {// @ts-ignore abilityDmaList = proc(abilityDmaDataSqlMem(data.params)); } arrayBufferHandler(data, abilityDmaList, true); } -export function abilityGpuMemoryDataReceiver(data: any, proc: Function): void { - if (abilityGpuMemoryList.length === 0) { +export function abilityGpuMemoryDataReceiver(data: unknown, proc: Function): void { + if (abilityGpuMemoryList.length === 0) {// @ts-ignore abilityGpuMemoryList = proc(abilityGpuMemoryDataSqlMem(data.params)); } arrayBufferHandler(data, abilityGpuMemoryList, true); } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { - let startNs = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startNs); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void {// @ts-ignore + let startNs = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startNs);// @ts-ignore let value = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.value); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.trackerData); - startNs[i] = it.startNs; + res.forEach((it, i) => {// @ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.trackerData);// @ts-ignore + startNs[i] = it.startNs;// @ts-ignore value[i] = it.value; }); (self as unknown as Worker).postMessage( - { - id: data.id, + {// @ts-ignore + id: data.id,// @ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/VmTrackerDataSender.ts b/ide/src/trace/database/data-trafic/VmTrackerDataSender.ts index aa8bca610d427236f16f21ebac2fcb69533c1789..7e89ddb00c855e755cff9a09da39698c94fffaca 100644 --- a/ide/src/trace/database/data-trafic/VmTrackerDataSender.ts +++ b/ide/src/trace/database/data-trafic/VmTrackerDataSender.ts @@ -39,8 +39,8 @@ export function sMapsDataSender(rowName: string, row: TraceRow): trafic: trafic, sharedArrayBuffers: row.sharedArrayBuffers, name: rowName, - }, - (res: any, len: number, transfer: boolean) => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -68,8 +68,8 @@ export function dmaDataSender(ipid: number, row: TraceRow): Prom trafic: trafic, ipid: ipid, sharedArrayBuffers: row.sharedArrayBuffers, - }, - (res: any, len: number, transfer: boolean) => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -97,8 +97,8 @@ export function gpuMemoryDataSender(ipid: number, row: TraceRow) trafic: trafic, ipid: ipid, sharedArrayBuffers: row.sharedArrayBuffers, - }, - (res: any, len: number, transfer: boolean) => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -125,8 +125,8 @@ export function gpuResourceDataSender(scratchId: number, row: TraceRow { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -155,8 +155,8 @@ export function gpuGpuDataSender(ipid: number, name: string, row: TraceRow { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -184,8 +184,8 @@ export function gpuTotalDataSender(moduleId: number | null, row: TraceRow { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -218,8 +218,8 @@ export function gpuWindowDataSender( sharedArrayBuffers: row.sharedArrayBuffers, windowId: windowId, moduleId: moduleId, - }, - (res: any, len: number, transfer: boolean) => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -247,8 +247,8 @@ export function shmDataSender(ipid: number, row: TraceRow): Prom trafic: trafic, sharedArrayBuffers: row.sharedArrayBuffers, ipid: ipid, - }, - (res: any, len: number, transfer: boolean) => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -281,8 +281,8 @@ export function purgeableDataSender( width: purgeWidth, trafic: trafic, sharedArrayBuffers: row.sharedArrayBuffers, - }, - (res: any, len: number, transfer: boolean): void => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean): void => { resolve(arrayBufferHandler(res, len)); } ); @@ -315,8 +315,8 @@ export function abilityPurgeableDataSender( sharedArrayBuffers: row.sharedArrayBuffers, dur: dur, isPin: isPin, - }, - (res: any, len: number, transfer: boolean) => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -347,8 +347,8 @@ export function abilityDmaDataSender(row: TraceRow, dur: number) sharedArrayBuffers: row.sharedArrayBuffers, dma: 'dma', dur: dur, - }, - (res: any, len: number, transfer: boolean) => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); @@ -376,17 +376,17 @@ export function abilityGpuMemoryDataSender(row: TraceRow, dur: n trafic: trafic, sharedArrayBuffers: row.sharedArrayBuffers, dur: dur, - }, - (res: any, len: number, transfer: boolean) => { + },// @ts-ignore + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(res, len)); } ); }); } - -function arrayBufferHandler(buffers: any, len: number): SnapshotStruct[] { - let outArr: SnapshotStruct[] = []; - let startNs = new Float64Array(buffers.startNs); +// @ts-ignore +function arrayBufferHandler(buffers: unknown, len: number): SnapshotStruct[] { + let outArr: SnapshotStruct[] = [];// @ts-ignore + let startNs = new Float64Array(buffers.startNs);// @ts-ignore let value = new Uint32Array(buffers.value); for (let i = 0; i < len; i++) { outArr.push({ diff --git a/ide/src/trace/database/data-trafic/process/FuncDataReceiver.ts b/ide/src/trace/database/data-trafic/process/FuncDataReceiver.ts index 91d7e5567627c723bf2fb3163c78ea4660d450b1..935d43c954ebba0be22ac14615409c260acec93c 100644 --- a/ide/src/trace/database/data-trafic/process/FuncDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/process/FuncDataReceiver.ts @@ -16,7 +16,7 @@ import { filterDataByGroupLayer } from '../utils/DataFilter'; import { TraficEnum } from '../utils/QueryEnum'; -export const chartFuncDataSql = (args: any): string => { +export const chartFuncDataSql = (args: unknown): string => { return ` select startTs, @@ -25,13 +25,16 @@ export const chartFuncDataSql = (args: any): string => { depth, id, max(dur2) as dur2, - (startTs) / (${Math.floor((args.endNS - args.startNS) / args.width)}) + (depth * ${ + (startTs) / (${//@ts-ignore + Math.floor((args.endNS - args.startNS) / args.width)}) + (depth * ${//@ts-ignore args.width }) AS px from ( - select c.ts - ${args.recordStartNS} as startTs, + select c.ts - ${//@ts-ignore + args.recordStartNS} as startTs, c.dur as dur, - case when (c.dur=-1 or c.dur is null ) then ${args.recordEndNS} else c.dur end as dur2, + case when (c.dur=-1 or c.dur is null ) then ${//@ts-ignore + args.recordEndNS} else c.dur end as dur2, c.argsetid, c.depth, c.id as id @@ -39,16 +42,20 @@ export const chartFuncDataSql = (args: any): string => { from callstack C where startTs not null and c.cookie is null - and c.callid in (select id from thread where tid=${args.tid} - and ipid=${args.ipid}) - and startTs + dur2 >= ${Math.floor(args.startNS)} - and startTs <= ${Math.floor(args.endNS)} + and c.callid in (select id from thread where tid=${//@ts-ignore + args.tid} + and ipid=${//@ts-ignore + args.ipid}) + and startTs + dur2 >= ${Math.floor(//@ts-ignore + args.startNS)} + and startTs <= ${Math.floor(//@ts-ignore + args.endNS)} ) group by px; `; }; -export const chartFuncDataSqlMem = (args: any): string => { +export const chartFuncDataSqlMem = (args: unknown): string => {//@ts-ignore return `select c.ts - ${args.recordStartNS} as startTs, c.dur as dur, ifnull(c.argsetid, -1) as argsetid, @@ -58,17 +65,19 @@ export const chartFuncDataSqlMem = (args: any): string => { from callstack C where startTs not null and c.cookie is null - and c.callid in (select id from thread where tid=${args.tid} - and ipid=${args.ipid})`; + and c.callid in (select id from thread where tid=${//@ts-ignore + args.tid} + and ipid=${//@ts-ignore + args.ipid})`; }; -export function funcDataReceiver(data: any, proc: Function): void { - if (data.params.trafic === TraficEnum.Memory) { +export function funcDataReceiver(data: unknown, proc: Function): void {//@ts-ignore + if (data.params.trafic === TraficEnum.Memory) {//@ts-ignore let key = `${data.params.tid}${data.params.ipid}`; - if (!threadCallStackList.has(key)) { + if (!threadCallStackList.has(key)) {//@ts-ignore let list = proc(chartFuncDataSqlMem(data.params)); for (let i = 0; i < list.length; i++) { if (list[i].dur === -1 || list[i].dur === null || list[i].dur === undefined) { - list[i].nofinish = 1; + list[i].nofinish = 1;//@ts-ignore let totalNs = data.params.recordEndNS - data.params.recordStartNS; list[i].dur = totalNs - list[i].startTs; } else { @@ -82,38 +91,38 @@ export function funcDataReceiver(data: any, proc: Function): void { array, 'depth', 'startTs', - 'dur', - data.params.startNS, - data.params.endNS, + 'dur',//@ts-ignore + data.params.startNS,//@ts-ignore + data.params.endNS,//@ts-ignore data.params.width ); arrayBufferHandler(data, res, true, array.length === 0); - } else { + } else {//@ts-ignore let sql = chartFuncDataSql(data.params); - let res = proc(sql); + let res = proc(sql);//@ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer, false); } } -function arrayBufferHandler(data: any, res: any[], transfer: boolean, isEmpty: boolean): void { - let startTs = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTs); - let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur); - let argsetid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.argsetid); - let depth = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.depth); - let id = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.id); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean, isEmpty: boolean): void {//@ts-ignore + let startTs = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTs);//@ts-ignore + let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur);//@ts-ignore + let argsetid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.argsetid);//@ts-ignore + let depth = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.depth);//@ts-ignore + let id = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.id);//@ts-ignore let nofinish = new Uint8Array(transfer ? res.length : data.params.sharedArrayBuffers.nofinish); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processFuncData); - startTs[i] = it.startTs; - dur[i] = it.dur; - argsetid[i] = it.argsetid; - depth[i] = it.depth; - id[i] = it.id; + res.forEach((it, i) => {//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processFuncData);//@ts-ignore + startTs[i] = it.startTs;//@ts-ignore + dur[i] = it.dur;//@ts-ignore + argsetid[i] = it.argsetid;//@ts-ignore + depth[i] = it.depth;//@ts-ignore + id[i] = it.id;//@ts-ignore nofinish[i] = it.nofinish; }); (self as unknown as Worker).postMessage( - { - id: data.id, + {//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/process/FuncDataSender.ts b/ide/src/trace/database/data-trafic/process/FuncDataSender.ts index 0868ebfa18f7187b50650b404e8f3d82318a8490..b11b7594f148766ecfcab3039ea9cad771fa0fcc 100644 --- a/ide/src/trace/database/data-trafic/process/FuncDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/FuncDataSender.ts @@ -43,7 +43,7 @@ export function funcDataSender(tid: number, ipid: number, row: TraceRow { + (res: unknown, len: number, transfer: boolean, isEmpty: boolean) => { if (isEmpty) { resolve(true); } else { @@ -54,13 +54,13 @@ export function funcDataSender(tid: number, ipid: number, row: TraceRow { +export const chartProcessActualDataSql = (args: unknown): string => { return ` SELECT - (a.ts - ${args.recordStartNS}) AS ts, + (a.ts - ${//@ts-ignore + args.recordStartNS}) AS ts, a.dur, - ${args.pid} as pid, + ${//@ts-ignore + args.pid} as pid, a.id, a.vsync AS name, a.type, @@ -29,74 +31,82 @@ export const chartProcessActualDataSql = (args: any): string => { FROM frame_slice AS a WHERE a.type = 0 AND a.flag <> 2 - AND a.ipid in (select p.ipid from process AS p where p.pid = ${args.pid}) + AND a.ipid in (select p.ipid from process AS p where p.pid = ${//@ts-ignore + args.pid}) ORDER BY a.ipid;`; }; -export const chartProcessActualProtoDataSql = (args: any): string => { +export const chartProcessActualProtoDataSql = (args: unknown): string => { return ` SELECT - (a.ts - ${args.recordStartNS}) AS ts, + (a.ts - ${//@ts-ignore + args.recordStartNS}) AS ts, a.dur, - ${args.pid} as pid, + ${//@ts-ignore + args.pid} as pid, a.id, a.vsync AS name, a.type, a.flag AS jankTag, a.dst AS dstSlice, a.depth, - (a.ts - ${args.recordStartNS}) / (${Math.floor( - (args.endNS - args.startNS) / args.width + (a.ts - ${//@ts-ignore + args.recordStartNS}) / (${Math.floor(//@ts-ignore + (args.endNS - args.startNS) / args.width//@ts-ignore )}) + (a.depth * ${args.width}) AS px FROM frame_slice AS a WHERE a.type = 0 AND a.flag <> 2 - AND a.ipid in (select p.ipid from process AS p where p.pid = ${args.pid}) - AND (a.ts - ${args.recordStartNS}) + dur >= ${Math.floor(args.startNS)} + AND a.ipid in (select p.ipid from process AS p where p.pid = ${//@ts-ignore + args.pid}) + AND (a.ts - ${//@ts-ignore + args.recordStartNS}) + dur >= ${Math.floor(//@ts-ignore + args.startNS)} - AND (a.ts - ${args.recordStartNS}) <= ${Math.floor(args.endNS)} + AND (a.ts - ${//@ts-ignore + args.recordStartNS}) <= ${Math.floor(args.endNS)} group by px ORDER BY a.ipid;`; }; -export function processActualDataReceiver(data: any, proc: Function): void { - if (data.params.trafic === TraficEnum.Memory) { - if (!processFrameList.has(`${data.params.pid}_actual`)) { - let sql = chartProcessActualDataSql(data.params); +export function processActualDataReceiver(data: unknown, proc: Function): void {//@ts-ignore + if (data.params.trafic === TraficEnum.Memory) {//@ts-ignore + if (!processFrameList.has(`${data.params.pid}_actual`)) {//@ts-ignore + let sql = chartProcessActualDataSql(data.params);//@ts-ignore processFrameList.set(`${data.params.pid}_actual`, proc(sql)); - } + }//@ts-ignore arrayBufferHandler(data, processFrameList.get(`${data.params.pid}_actual`)!, true); - } else { + } else {//@ts-ignore let sql = chartProcessActualProtoDataSql(data.params); - let res = proc(sql); + let res = proc(sql);//@ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer); } } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void { let processActual = new ProcessActual(data, transfer, res.length); for (let index = 0; index < res.length; index++) { - let itemData = res[index]; - data.params.trafic === TraficEnum.ProtoBuffer && (itemData = itemData.processJanksActualData); + let itemData = res[index];//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (itemData = itemData.processJanksActualData);//@ts-ignore if (!itemData.dur || itemData.dur < 0) { continue; - } - processActual.dur[index] = itemData.dur; - processActual.ts[index] = itemData.ts; - processActual.pid[index] = itemData.pid; - processActual.id[index] = itemData.id; - processActual.name[index] = itemData.name; - processActual.type[index] = itemData.type; - processActual.jank_tag[index] = itemData.jankTag; - processActual.dst_slice[index] = itemData.dstSlice; + }//@ts-ignore + processActual.dur[index] = itemData.dur;//@ts-ignore + processActual.ts[index] = itemData.ts;//@ts-ignore + processActual.pid[index] = itemData.pid;//@ts-ignore + processActual.id[index] = itemData.id;//@ts-ignore + processActual.name[index] = itemData.name;//@ts-ignore + processActual.type[index] = itemData.type;//@ts-ignore + processActual.jank_tag[index] = itemData.jankTag;//@ts-ignore + processActual.dst_slice[index] = itemData.dstSlice;//@ts-ignore processActual.depth[index] = itemData.depth; } postProcessActualMessage(data, transfer, processActual, res.length); } -function postProcessActualMessage(data: any, transfer: boolean, processActual: ProcessActual, len: number): void { +function postProcessActualMessage(data: unknown, transfer: boolean, processActual: ProcessActual, len: number): void { (self as unknown as Worker).postMessage( - { - id: data.id, + {//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { @@ -139,15 +149,15 @@ class ProcessActual { jank_tag: Int32Array; dst_slice: Int32Array; depth: Uint16Array; - constructor(data: any, transfer: boolean, len: number) { - this.ts = new Float64Array(transfer ? len : data.params.sharedArrayBuffers.ts); - this.dur = new Float64Array(transfer ? len : data.params.sharedArrayBuffers.dur); - this.pid = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.pid); - this.id = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.id); - this.name = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.name); - this.type = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.type); - this.jank_tag = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.jank_tag); - this.dst_slice = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.dst_slice); + constructor(data: unknown, transfer: boolean, len: number) {//@ts-ignore + this.ts = new Float64Array(transfer ? len : data.params.sharedArrayBuffers.ts);//@ts-ignore + this.dur = new Float64Array(transfer ? len : data.params.sharedArrayBuffers.dur);//@ts-ignore + this.pid = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.pid);//@ts-ignore + this.id = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.id);//@ts-ignore + this.name = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.name);//@ts-ignore + this.type = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.type);//@ts-ignore + this.jank_tag = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.jank_tag);//@ts-ignore + this.dst_slice = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.dst_slice);//@ts-ignore this.depth = new Uint16Array(transfer ? len : data.params.sharedArrayBuffers.depth); } } diff --git a/ide/src/trace/database/data-trafic/process/ProcessActualDataSender.ts b/ide/src/trace/database/data-trafic/process/ProcessActualDataSender.ts index c0894edbf0385de808a8f1f57fed3772cd98def7..71a52ce972eedd895c5c037a98afbccd1086ff26 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessActualDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessActualDataSender.ts @@ -46,23 +46,23 @@ export function processActualDataSender(pid: number, row: TraceRow): sharedArrayBuffers: row.sharedArrayBuffers, t: Date.now(), }, - (res: any, len: number, transfer: boolean): void => { + (res: unknown, len: number, transfer: boolean): void => { resolve(arrayBufferHandler(transfer ? res : row.sharedArrayBuffers, len)); } ); }); } -function arrayBufferHandler(buffers: any, len: number): JankStruct[] { - let name = new Int32Array(buffers.name); - let id = new Int32Array(buffers.id); - let pid = new Int32Array(buffers.pid); - let type = new Int32Array(buffers.type); - let ts = new Float64Array(buffers.ts); +function arrayBufferHandler(buffers: unknown, len: number): JankStruct[] {//@ts-ignore + let name = new Int32Array(buffers.name);//@ts-ignore + let id = new Int32Array(buffers.id);//@ts-ignore + let pid = new Int32Array(buffers.pid);//@ts-ignore + let type = new Int32Array(buffers.type);//@ts-ignore + let ts = new Float64Array(buffers.ts);//@ts-ignore let dur = new Float64Array(buffers.dur); - let outArr: JankStruct[] = []; - let jank_tag = new Int32Array(buffers.jank_tag); - let dst_slice = new Int32Array(buffers.dst_slice); + let outArr: JankStruct[] = [];//@ts-ignore + let jank_tag = new Int32Array(buffers.jank_tag);//@ts-ignore + let dst_slice = new Int32Array(buffers.dst_slice);//@ts-ignore let depth = new Uint16Array(buffers.depth); for (let i = 0; i < len; i++) { outArr.push({ diff --git a/ide/src/trace/database/data-trafic/process/ProcessDataReceiver.ts b/ide/src/trace/database/data-trafic/process/ProcessDataReceiver.ts index e39048a54d1e507374c4dbaca0aac70e0adaa72a..57c5ba14bdf5a428bd41101c921d0b3db1de639d 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessDataReceiver.ts @@ -15,69 +15,75 @@ import { TraficEnum } from '../utils/QueryEnum'; import { filterDataByGroupLayer, filterDataByLayer } from '../utils/DataFilter'; import { processList } from '../utils/AllMemoryCache'; -const sqlNormal = (args: any): string => { +const sqlNormal = (args: unknown): string => { return `select ta.cpu, max(dur) as dur, - ts - ${ + ts - ${//@ts-ignore args.recordStartNS } as startTime, - ((ts - ${args.recordStartNS}) / (${Math.floor( - (args.endNS - args.startNS) / args.width + ((ts - ${//@ts-ignore + args.recordStartNS}) / (${Math.floor(//@ts-ignore + (args.endNS - args.startNS) / args.width//@ts-ignore )})) + (ta.cpu * ${args.width}) AS px from thread_state ta where ta.cpu is not null - and pid = ${args.pid} - and startTime + dur >= ${Math.floor(args.startNS)} - and startTime <= ${Math.floor(args.endNS)} + and pid = ${//@ts-ignore + args.pid} + and startTime + dur >= ${Math.floor(//@ts-ignore + args.startNS)} + and startTime <= ${Math.floor(//@ts-ignore + args.endNS)} group by px;`; }; -const sqlMem = (args: any): string => { +const sqlMem = (args: unknown): string => { return `select ta.cpu, dur as dur, - ts - ${args.recordStartNS} as startTime + ts - ${//@ts-ignore + args.recordStartNS} as startTime from thread_state ta where ta.cpu is not null - and pid = ${args.pid};`; + and pid = ${//@ts-ignore + args.pid};`; }; -export function processDataReceiver(data: any, proc: Function): void { - if (data.params.trafic === TraficEnum.Memory) { - if (!processList.has(data.params.pid)) { +export function processDataReceiver(data: unknown, proc: Function): void {//@ts-ignore + if (data.params.trafic === TraficEnum.Memory) {//@ts-ignore + if (!processList.has(data.params.pid)) {//@ts-ignore processList.set(data.params.pid, proc(sqlMem(data.params))); } - let res = filterDataByLayer( + let res = filterDataByLayer(//@ts-ignore processList.get(data.params.pid) || [], 'cpu', 'startTime', - 'dur', - data.params.startNS, - data.params.endNS, + 'dur',//@ts-ignore + data.params.startNS,//@ts-ignore + data.params.endNS,//@ts-ignore data.params.width ); arrayBufferHandler(data, res, true); return; - } else { - let transfer = data.params.trafic !== TraficEnum.SharedArrayBuffer; + } else {//@ts-ignore + let transfer = data.params.trafic !== TraficEnum.SharedArrayBuffer;//@ts-ignore let sql = sqlNormal(data.params); - let res: any[] = proc(sql); + let res: unknown[] = proc(sql); arrayBufferHandler(data, res, transfer); } } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { - let startTime = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime); - let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void {//@ts-ignore + let startTime = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime);//@ts-ignore + let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur);//@ts-ignore let cpu = new Uint8Array(transfer ? res.length : data.params.sharedArrayBuffers.cpu); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processData); - startTime[i] = it.startTime; - dur[i] = it.dur; + res.forEach((it, i) => {//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processData);//@ts-ignore + startTime[i] = it.startTime;//@ts-ignore + dur[i] = it.dur;//@ts-ignore cpu[i] = it.cpu; }); (self as unknown as Worker).postMessage( - { - id: data.id, + {//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/process/ProcessDataSender.ts b/ide/src/trace/database/data-trafic/process/ProcessDataSender.ts index 2271fac17d2c1965fd23e1e40985f40da99c3353..005031378cff79c78023a5a7c50199016e5c4cfd 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessDataSender.ts @@ -41,17 +41,17 @@ export function processDataSender(pid: number, row: TraceRow): Pr trafic: trafic, sharedArrayBuffers: row.sharedArrayBuffers, }, - (res: any, len: number, transfer: boolean): void => { + (res: unknown, len: number, transfer: boolean): void => { resolve(arrayBufferHandler(transfer ? res : row.sharedArrayBuffers, len)); } ); }); } -function arrayBufferHandler(buffers: any, len: number): ProcessStruct[] { - let outArr: ProcessStruct[] = []; - let cpu = new Uint8Array(buffers.cpu); - let startTime = new Float64Array(buffers.startTime); +function arrayBufferHandler(buffers: unknown, len: number): ProcessStruct[] { + let outArr: ProcessStruct[] = [];//@ts-ignore + let cpu = new Uint8Array(buffers.cpu);//@ts-ignore + let startTime = new Float64Array(buffers.startTime);//@ts-ignore let dur = new Float64Array(buffers.dur); for (let i = 0; i < len; i++) { outArr.push({ diff --git a/ide/src/trace/database/data-trafic/process/ProcessDeliverInputEventDataReceiver.ts b/ide/src/trace/database/data-trafic/process/ProcessDeliverInputEventDataReceiver.ts index 4edca8524fa945354bb06162716a1b9225593138..22a2d4f9d0a6bbc769abe47605b6d5ecb5503c94 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessDeliverInputEventDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessDeliverInputEventDataReceiver.ts @@ -13,10 +13,11 @@ import { TraficEnum } from '../utils/QueryEnum'; -export const chartProcessDeliverInputEventDataSql = (args: any): string => { +export const chartProcessDeliverInputEventDataSql = (args: unknown): string => { return ` select - c.ts-${args.recordStartNS} as startTs, + c.ts-${//@ts-ignore + args.recordStartNS} as startTs, c.dur, c.argsetid, tid, @@ -27,7 +28,8 @@ export const chartProcessDeliverInputEventDataSql = (args: any): string => { c.id, c.cookie, c.depth, - ((c.ts - ${args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)})) AS px, + ((c.ts - ${//@ts-ignore + args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)})) AS px, c.name as funName, A.name as threadName from thread A @@ -35,48 +37,51 @@ export const chartProcessDeliverInputEventDataSql = (args: any): string => { left join process P on P.id = A.ipid where startTs not null and cookie not null and c.name ='deliverInputEvent' - and tid = ${args.tid} - and startTs + dur >= ${Math.floor(args.startNS)} - and startTs <= ${Math.floor(args.endNS)} + and tid = ${//@ts-ignore + args.tid} + and startTs + dur >= ${Math.floor(//@ts-ignore + args.startNS)} + and startTs <= ${Math.floor(//@ts-ignore + args.endNS)} group by px; `; }; -export function processDeliverInputEventDataReceiver(data: any, proc: Function): void { +export function processDeliverInputEventDataReceiver(data: unknown, proc: Function): void {//@ts-ignore let sql = chartProcessDeliverInputEventDataSql(data.params); - let res = proc(sql); + let res = proc(sql);//@ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer); } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void { let processDeliverInputEvent = new ProcessDeliverInputEvent(data, transfer, res.length); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processInputEventData); - processDeliverInputEvent.tid[i] = it.tid; - processDeliverInputEvent.dur[i] = it.dur; - processDeliverInputEvent.is_main_thread[i] = it.isMainThread; - processDeliverInputEvent.track_id[i] = it.trackId; - processDeliverInputEvent.startTs[i] = it.startTs; - processDeliverInputEvent.pid[i] = it.pid; - processDeliverInputEvent.parent_id[i] = it.parentId; - processDeliverInputEvent.id[i] = it.id; - processDeliverInputEvent.cookie[i] = it.cookie; - processDeliverInputEvent.depth[i] = it.depth; + res.forEach((it, i) => {//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processInputEventData);//@ts-ignore + processDeliverInputEvent.tid[i] = it.tid;//@ts-ignore + processDeliverInputEvent.dur[i] = it.dur;//@ts-ignore + processDeliverInputEvent.is_main_thread[i] = it.isMainThread;//@ts-ignore + processDeliverInputEvent.track_id[i] = it.trackId;//@ts-ignore + processDeliverInputEvent.startTs[i] = it.startTs;//@ts-ignore + processDeliverInputEvent.pid[i] = it.pid;//@ts-ignore + processDeliverInputEvent.parent_id[i] = it.parentId;//@ts-ignore + processDeliverInputEvent.id[i] = it.id;//@ts-ignore + processDeliverInputEvent.cookie[i] = it.cookie;//@ts-ignore + processDeliverInputEvent.depth[i] = it.depth;//@ts-ignore processDeliverInputEvent.argsetid[i] = it.argsetid; }); postMessage(data, transfer, processDeliverInputEvent, res.length); } function postMessage( - data: any, + data: unknown, transfer: boolean, processDeliverInputEvent: ProcessDeliverInputEvent, len: number ): void { (self as unknown as Worker).postMessage( { - transfer: transfer, - id: data.id, + transfer: transfer,//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { @@ -124,17 +129,17 @@ class ProcessDeliverInputEvent { cookie: Int32Array; depth: Int32Array; argsetid: Int32Array; - constructor(data: any, transfer: boolean, len: number) { - this.tid = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.tid); - this.pid = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.pid); - this.is_main_thread = new Int8Array(transfer ? len : data.params.sharedArrayBuffers.is_main_thread); - this.track_id = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.track_id); - this.startTs = new Float64Array(transfer ? len : data.params.sharedArrayBuffers.startTs); - this.dur = new Float64Array(transfer ? len : data.params.sharedArrayBuffers.dur); - this.parent_id = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.parent_id); - this.id = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.id); - this.cookie = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.cookie); - this.depth = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.depth); + constructor(data: unknown, transfer: boolean, len: number) {//@ts-ignore + this.tid = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.tid);//@ts-ignore + this.pid = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.pid);//@ts-ignore + this.is_main_thread = new Int8Array(transfer ? len : data.params.sharedArrayBuffers.is_main_thread);//@ts-ignore + this.track_id = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.track_id);//@ts-ignore + this.startTs = new Float64Array(transfer ? len : data.params.sharedArrayBuffers.startTs);//@ts-ignore + this.dur = new Float64Array(transfer ? len : data.params.sharedArrayBuffers.dur);//@ts-ignore + this.parent_id = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.parent_id);//@ts-ignore + this.id = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.id);//@ts-ignore + this.cookie = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.cookie);//@ts-ignore + this.depth = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.depth);//@ts-ignore this.argsetid = new Int32Array(transfer ? len : data.params.sharedArrayBuffers.argsetid); } } diff --git a/ide/src/trace/database/data-trafic/process/ProcessDeliverInputEventDataSender.ts b/ide/src/trace/database/data-trafic/process/ProcessDeliverInputEventDataSender.ts index d255bc3c1fbce3fd33500b3cbc327e656116f7ac..8672f5bf4ceb21047652077028db69bd141a4e2d 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessDeliverInputEventDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessDeliverInputEventDataSender.ts @@ -48,25 +48,25 @@ export function processDeliverInputEventDataSender(tid: number, row: TraceRow { + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(transfer ? res : row.sharedArrayBuffers, len)); } ); }); } -function arrayBufferHandler(buffers: any, len: number): FuncStruct[] { - let outArr: FuncStruct[] = []; - let tid = new Int32Array(buffers.tid); - let pid = new Int32Array(buffers.pid); - let is_main_thread = new Int8Array(buffers.is_main_thread); - let track_id = new Int32Array(buffers.track_id); - let startTs = new Float64Array(buffers.startTs); - let dur = new Float64Array(buffers.dur); - let parent_id = new Int32Array(buffers.tid); - let id = new Int32Array(buffers.id); - let cookie = new Int32Array(buffers.cookie); - let depth = new Int32Array(buffers.depth); +function arrayBufferHandler(buffers: unknown, len: number): FuncStruct[] { + let outArr: FuncStruct[] = [];//@ts-ignore + let tid = new Int32Array(buffers.tid);//@ts-ignore + let pid = new Int32Array(buffers.pid);//@ts-ignore + let is_main_thread = new Int8Array(buffers.is_main_thread);//@ts-ignore + let track_id = new Int32Array(buffers.track_id);//@ts-ignore + let startTs = new Float64Array(buffers.startTs);//@ts-ignore + let dur = new Float64Array(buffers.dur);//@ts-ignore + let parent_id = new Int32Array(buffers.tid);//@ts-ignore + let id = new Int32Array(buffers.id);//@ts-ignore + let cookie = new Int32Array(buffers.cookie);//@ts-ignore + let depth = new Int32Array(buffers.depth);//@ts-ignore let argsetid = new Int32Array(buffers.argsetid); for (let i = 0; i < len; i++) { outArr.push({ diff --git a/ide/src/trace/database/data-trafic/process/ProcessExpectedDataReceiver.ts b/ide/src/trace/database/data-trafic/process/ProcessExpectedDataReceiver.ts index 1cd5154bf7ecf546aef02af8bf6b53de684f95e5..e34895c28e238c2312d686148b28c192385d6470 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessExpectedDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessExpectedDataReceiver.ts @@ -15,12 +15,14 @@ import { TraficEnum } from '../utils/QueryEnum'; import { processFrameList } from '../utils/AllMemoryCache'; import { filterDataByGroup } from '../utils/DataFilter'; -export const chartProcessExpectedDataSql = (args: any): string => { +export const chartProcessExpectedDataSql = (args: unknown): string => { return ` SELECT - (a.ts - ${args.recordStartNS}) AS ts, + (a.ts - ${//@ts-ignore + args.recordStartNS}) AS ts, a.dur, - ${args.pid} as pid, + ${//@ts-ignore + args.pid} as pid, a.id, a.vsync as name, a.type, @@ -28,69 +30,76 @@ export const chartProcessExpectedDataSql = (args: any): string => { FROM frame_slice AS a WHERE a.type = 1 and (a.flag <> 2 or a.flag is null) - and a.ipid in (select p.ipid from process AS p where p.pid = ${args.pid}) + and a.ipid in (select p.ipid from process AS p where p.pid = ${//@ts-ignore + args.pid}) ORDER BY a.ipid`; }; -export const chartProcessExpectedProtoDataSql = (args: any): string => { +export const chartProcessExpectedProtoDataSql = (args: unknown): string => { return ` SELECT - (a.ts - ${args.recordStartNS}) AS ts, + (a.ts - ${//@ts-ignore + args.recordStartNS}) AS ts, a.dur, - ${args.pid} as pid, + ${//@ts-ignore + args.pid} as pid, a.id, a.vsync as name, a.type, a.depth, - (a.ts - ${args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)}) + (a.depth * ${ + (a.ts - ${//@ts-ignore + args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)}) + (a.depth * ${//@ts-ignore args.width }) AS px FROM frame_slice AS a WHERE a.type = 1 and (a.flag <> 2 or a.flag is null) - and a.ipid in (select p.ipid from process AS p where p.pid = ${args.pid}) - and (a.ts - ${args.recordStartNS} + a.dur) >= ${Math.floor(args.startNS)} - and (a.ts - ${args.recordStartNS}) <= ${Math.floor(args.endNS)} + and a.ipid in (select p.ipid from process AS p where p.pid = ${//@ts-ignore + args.pid}) + and (a.ts - ${//@ts-ignore + args.recordStartNS} + a.dur) >= ${Math.floor(args.startNS)} + and (a.ts - ${//@ts-ignore + args.recordStartNS}) <= ${Math.floor(args.endNS)} group by px ORDER BY a.ipid;`; }; -export function processExpectedDataReceiver(data: any, proc: Function): void { - if (data.params.trafic === TraficEnum.Memory) { - if (!processFrameList.has(`${data.params.pid}_expected`)) { - let sql = chartProcessExpectedDataSql(data.params); +export function processExpectedDataReceiver(data: unknown, proc: Function): void {//@ts-ignore + if (data.params.trafic === TraficEnum.Memory) {//@ts-ignore + if (!processFrameList.has(`${data.params.pid}_expected`)) {//@ts-ignore + let sql = chartProcessExpectedDataSql(data.params);//@ts-ignore processFrameList.set(`${data.params.pid}_expected`, proc(sql)); - } + }//@ts-ignore arrayBufferHandler(data, processFrameList.get(`${data.params.pid}_expected`)!, true); - } else { + } else {//@ts-ignore let sql = chartProcessExpectedProtoDataSql(data.params); - let res = proc(sql); + let res = proc(sql);//@ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer); } } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { - let ts = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.ts); - let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur); - let pid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.pid); - let id = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.id); - let name = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.name); - let type = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.type); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void {//@ts-ignore + let ts = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.ts);//@ts-ignore + let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur);//@ts-ignore + let pid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.pid);//@ts-ignore + let id = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.id);//@ts-ignore + let name = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.name);//@ts-ignore + let type = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.type);//@ts-ignore let depth = new Uint16Array(transfer ? res.length : data.params.sharedArrayBuffers.depth); for (let index = 0; index < res.length; index++) { - let itemData = res[index]; - data.params.trafic === TraficEnum.ProtoBuffer && (itemData = itemData.processJanksFramesData); - dur[index] = itemData.dur; - ts[index] = itemData.ts; - pid[index] = itemData.pid; - id[index] = itemData.id; - name[index] = itemData.name; - type[index] = itemData.type; + let itemData = res[index];//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (itemData = itemData.processJanksFramesData);//@ts-ignore + dur[index] = itemData.dur;//@ts-ignore + ts[index] = itemData.ts;//@ts-ignore + pid[index] = itemData.pid;//@ts-ignore + id[index] = itemData.id;//@ts-ignore + name[index] = itemData.name;//@ts-ignore + type[index] = itemData.type;//@ts-ignore depth[index] = itemData.depth; } (self as unknown as Worker).postMessage( - { - id: data.id, + {//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/process/ProcessExpectedDataSender.ts b/ide/src/trace/database/data-trafic/process/ProcessExpectedDataSender.ts index 99ac10951936b3a02a4385b88ce86ea455906797..6a7b9c239d6f3df80286789d4e307491f1869882 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessExpectedDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessExpectedDataSender.ts @@ -44,21 +44,21 @@ export function processExpectedDataSender(pid: number, row: TraceRow sharedArrayBuffers: row.sharedArrayBuffers, trafic: trafic, }, - (res: any, len: number, transfer: boolean): void => { + (res: unknown, len: number, transfer: boolean): void => { resolve(arrayBufferHandler(transfer ? res : row.sharedArrayBuffers, len)); } ); }); } -function arrayBufferHandler(buffers: any, len: number): JankStruct[] { - let outArr: JankStruct[] = []; - let name = new Int32Array(buffers.name); - let pid = new Int32Array(buffers.pid); - let type = new Int32Array(buffers.type); - let id = new Int32Array(buffers.id); - let ts = new Float64Array(buffers.ts); - let dur = new Float64Array(buffers.dur); +function arrayBufferHandler(buffers: unknown, len: number): JankStruct[] { + let outArr: JankStruct[] = [];//@ts-ignore + let name = new Int32Array(buffers.name);//@ts-ignore + let pid = new Int32Array(buffers.pid);//@ts-ignore + let type = new Int32Array(buffers.type);//@ts-ignore + let id = new Int32Array(buffers.id);//@ts-ignore + let ts = new Float64Array(buffers.ts);//@ts-ignore + let dur = new Float64Array(buffers.dur);//@ts-ignore let depth = new Uint16Array(buffers.depth); for (let i = 0; i < len; i++) { outArr.push({ diff --git a/ide/src/trace/database/data-trafic/process/ProcessMemDataReceiver.ts b/ide/src/trace/database/data-trafic/process/ProcessMemDataReceiver.ts index e301e3e2e5a4ec56b426c60e35426c32d45b4e49..3702483ef5a00ab9b7425f72c492465e7236e383 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessMemDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessMemDataReceiver.ts @@ -14,45 +14,47 @@ import { TraficEnum } from '../utils/QueryEnum'; import { memList } from '../utils/AllMemoryCache'; -export const chartProcessMemDataSql = (args: any): string => { +export const chartProcessMemDataSql = (args: unknown): string => { return ` select filter_id as trackId, value, - c.ts - ${args.recordStartNS} as startTime, + c.ts - ${//@ts-ignore + args.recordStartNS} as startTime, ts from process_measure c, trace_range tb - where filter_id = ${args.trackId};`; + where filter_id = ${//@ts-ignore + args.trackId};`; }; -export function processMemDataReceiver(data: any, proc: Function): void { - let res: any[], list: any[]; - if (!memList.has(data.params.trackId)) { - list = proc(chartProcessMemDataSql(data.params)); +export function processMemDataReceiver(data: unknown, proc: Function): void { + let res: unknown[], list: unknown[];//@ts-ignore + if (!memList.has(data.params.trackId)) {//@ts-ignore + list = proc(chartProcessMemDataSql(data.params));//@ts-ignore memList.set(data.params.trackId, list); - } else { + } else {//@ts-ignore list = memList.get(data.params.trackId) || []; } - res = list; + res = list;//@ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer); } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { - let startTime = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime); - let ts = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.ts); - let value = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.value); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void {//@ts-ignore + let startTime = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime);//@ts-ignore + let ts = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.ts);//@ts-ignore + let value = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.value);//@ts-ignore let track_id = new Uint8Array(transfer ? res.length : data.params.sharedArrayBuffers.track_id); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processMemData); - ts[i] = it.ts; - startTime[i] = it.startTime; - track_id[i] = it.trackId; + res.forEach((it, i) => {//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processMemData);//@ts-ignore + ts[i] = it.ts;//@ts-ignore + startTime[i] = it.startTime;//@ts-ignore + track_id[i] = it.trackId;//@ts-ignore value[i] = it.value; }); (self as unknown as Worker).postMessage( - { - id: data.id, + {//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/process/ProcessMemDataSender.ts b/ide/src/trace/database/data-trafic/process/ProcessMemDataSender.ts index 01747b2401c928d59ca0a2ec075aea52debf2a9a..eb244f20612868bfe47f5d7f0ac67b60c9320878 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessMemDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessMemDataSender.ts @@ -41,18 +41,18 @@ export function processMemDataSender(trackId: number, row: TraceRow { + (res: unknown, len: number, transfer: boolean): void => { resolve(arrayBufferHandler(transfer ? res : row.sharedArrayBuffers, len)); } ); }); } -function arrayBufferHandler(buffers: any, len: number): ProcessMemStruct[] { - let outArr: ProcessMemStruct[] = []; - let track_id = new Uint8Array(buffers.track_id); - let value = new Int32Array(buffers.value); - let startTime = new Float64Array(buffers.startTime); +function arrayBufferHandler(buffers: unknown, len: number): ProcessMemStruct[] { + let outArr: ProcessMemStruct[] = [];//@ts-ignore + let track_id = new Uint8Array(buffers.track_id);//@ts-ignore + let value = new Int32Array(buffers.value);//@ts-ignore + let startTime = new Float64Array(buffers.startTime);//@ts-ignore let ts = new Float64Array(buffers.ts); for (let i = 0; i < len; i++) { outArr.push({ diff --git a/ide/src/trace/database/data-trafic/process/ProcessSoInitDataReceiver.ts b/ide/src/trace/database/data-trafic/process/ProcessSoInitDataReceiver.ts index f8f61fc2be7b1a690a82ab43376a0197671842f6..0a2d67426b0014beea6b275ca886af05f8e5c907 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessSoInitDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessSoInitDataReceiver.ts @@ -13,7 +13,7 @@ import { TraficEnum } from '../utils/QueryEnum'; -export const chartProcessSoInitDataSql = (args: any): string => { +export const chartProcessSoInitDataSql = (args: unknown): string => { return ` select A.depth, @@ -27,37 +27,38 @@ export const chartProcessSoInitDataSql = (args: any): string => { from static_initalize A,trace_range B left join process P on A.ipid = P.ipid left join thread T on A.call_id = T.itid -where P.pid = ${args.pid};`; +where P.pid = ${//@ts-ignore + args.pid};`; }; -export function processSoInitDataReceiver(data: any, proc: Function): void { +export function processSoInitDataReceiver(data: unknown, proc: Function): void {//@ts-ignore let sql = chartProcessSoInitDataSql(data.params); - let res = proc(sql); + let res = proc(sql);//@ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer); } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { - let startTs = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTs); - let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur); - let pid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.pid); - let tid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.tid); - let itid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.itid); - let depth = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.depth); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void {//@ts-ignore + let startTs = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTs);//@ts-ignore + let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur);//@ts-ignore + let pid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.pid);//@ts-ignore + let tid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.tid);//@ts-ignore + let itid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.itid);//@ts-ignore + let depth = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.depth);//@ts-ignore let id = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.id); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processSoInitData); - dur[i] = it.dur || 0; - startTs[i] = it.startTime || 0; - pid[i] = it.pid || 0; - tid[i] = it.tid || 0; - itid[i] = it.itid || 0; - depth[i] = it.depth || 0; + res.forEach((it, i) => {//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processSoInitData);//@ts-ignore + dur[i] = it.dur || 0;//@ts-ignore + startTs[i] = it.startTime || 0;//@ts-ignore + pid[i] = it.pid || 0;//@ts-ignore + tid[i] = it.tid || 0;//@ts-ignore + itid[i] = it.itid || 0;//@ts-ignore + depth[i] = it.depth || 0;//@ts-ignore id[i] = it.id || 0; }); (self as unknown as Worker).postMessage( { - transfer: transfer, - id: data.id, + transfer: transfer,//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/process/ProcessSoInitDataSender.ts b/ide/src/trace/database/data-trafic/process/ProcessSoInitDataSender.ts index ad4e5c6fb46d86f9396c0165beca83ef689622c9..e13c52c2bfd0925042f0a640f5a082ce9dd410fc 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessSoInitDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessSoInitDataSender.ts @@ -44,21 +44,21 @@ export function processSoInitDataSender(pid: number, row: TraceRow): P trafic: trafic, sharedArrayBuffers: row.sharedArrayBuffers, }, - (res: any, len: number, transfer: boolean): void => { + (res: unknown, len: number, transfer: boolean): void => { resolve(arrayBufferHandler(transfer ? res : row.sharedArrayBuffers, len)); } ); }); } -function arrayBufferHandler(buffers: any, len: number): SoStruct[] { - let outArr: SoStruct[] = []; - let id = new Int32Array(buffers.id); - let depth = new Int32Array(buffers.depth); - let pid = new Int32Array(buffers.pid); - let tid = new Int32Array(buffers.tid); - let itid = new Int32Array(buffers.itid); - let startTs = new Float64Array(buffers.startTs); +function arrayBufferHandler(buffers: unknown, len: number): SoStruct[] { + let outArr: SoStruct[] = [];//@ts-ignore + let id = new Int32Array(buffers.id);//@ts-ignore + let depth = new Int32Array(buffers.depth);//@ts-ignore + let pid = new Int32Array(buffers.pid);//@ts-ignore + let tid = new Int32Array(buffers.tid);//@ts-ignore + let itid = new Int32Array(buffers.itid);//@ts-ignore + let startTs = new Float64Array(buffers.startTs);//@ts-ignore let dur = new Float64Array(buffers.dur); for (let i = 0; i < len; i++) { outArr.push({ diff --git a/ide/src/trace/database/data-trafic/process/ProcessStartupDataReceiver.ts b/ide/src/trace/database/data-trafic/process/ProcessStartupDataReceiver.ts index 23e9b656576dfbded0e3b13bf84dfd221e663f5b..9ef652c0d0760fad7f9296e28d3a1c45e5fc4402 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessStartupDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessStartupDataReceiver.ts @@ -13,48 +13,51 @@ import { TraficEnum } from '../utils/QueryEnum'; -export const chartProcessStartupDataSql = (args: any): string => { +export const chartProcessStartupDataSql = (args: unknown): string => { return ` select P.pid, A.tid, A.call_id as itid, - (case when A.start_time < ${args.recordStartNS} then 0 else (A.start_time - ${args.recordStartNS}) end) as startTime, + (case when A.start_time < ${//@ts-ignore + args.recordStartNS} then 0 else (A.start_time - ${args.recordStartNS}) end) as startTime, (case - when A.start_time < ${args.recordStartNS} then (A.end_time - ${args.recordStartNS}) + when A.start_time < ${//@ts-ignore + args.recordStartNS} then (A.end_time - ${args.recordStartNS}) when A.end_time = -1 then 0 else (A.end_time - A.start_time) end) as dur, A.start_name as startName from app_startup A left join process P on A.ipid = P.ipid - where P.pid = ${args.pid} + where P.pid = ${//@ts-ignore + args.pid} order by start_name;`; }; -export function processStartupDataReceiver(data: any, proc: Function): void { +export function processStartupDataReceiver(data: unknown, proc: Function): void {//@ts-ignore let sql = chartProcessStartupDataSql(data.params); - let res = proc(sql); + let res = proc(sql);//@ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer); } -function arrayBufferHandler(data: any, res: any[], transfer: boolean): void { - let startTs = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime); - let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur); - let pid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.pid); - let tid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.tid); - let itid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.itid); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean): void {//@ts-ignore + let startTs = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime);//@ts-ignore + let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur);//@ts-ignore + let pid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.pid);//@ts-ignore + let tid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.tid);//@ts-ignore + let itid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.itid);//@ts-ignore let startName = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.startName); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processStartupData); - dur[i] = it.dur || 0; - startTs[i] = it.startTime || 0; - pid[i] = it.pid || 0; - tid[i] = it.tid || 0; - itid[i] = it.itid || 0; + res.forEach((it, i) => {//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processStartupData);//@ts-ignore + dur[i] = it.dur || 0;//@ts-ignore + startTs[i] = it.startTime || 0;//@ts-ignore + pid[i] = it.pid || 0;//@ts-ignore + tid[i] = it.tid || 0;//@ts-ignore + itid[i] = it.itid || 0;//@ts-ignore startName[i] = it.startName || 0; }); (self as unknown as Worker).postMessage( - { - id: data.id, + {//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/process/ProcessStartupDataSender.ts b/ide/src/trace/database/data-trafic/process/ProcessStartupDataSender.ts index 67dcf6fa45f166097aa09dbe9c1a06fbbf75fadb..4078797f08ba35e296728200b550113c98915e7d 100644 --- a/ide/src/trace/database/data-trafic/process/ProcessStartupDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/ProcessStartupDataSender.ts @@ -43,19 +43,19 @@ export function processStartupDataSender(pid: number, row: TraceRow { + (res: unknown, len: number, transfer: boolean) => { resolve(arrayBufferHandler(transfer ? res : row.sharedArrayBuffers, len)); } ); }); } -function arrayBufferHandler(buffers: any, len: number): AppStartupStruct[] { - let startName = new Int32Array(buffers.startName); - let pid = new Int32Array(buffers.pid); - let tid = new Int32Array(buffers.tid); - let itid = new Int32Array(buffers.itid); - let startTs = new Float64Array(buffers.startTs); +function arrayBufferHandler(buffers: unknown, len: number): AppStartupStruct[] {//@ts-ignore + let startName = new Int32Array(buffers.startName);//@ts-ignore + let pid = new Int32Array(buffers.pid);//@ts-ignore + let tid = new Int32Array(buffers.tid);//@ts-ignore + let itid = new Int32Array(buffers.itid);//@ts-ignore + let startTs = new Float64Array(buffers.startTs);//@ts-ignore let dur = new Float64Array(buffers.dur); let outArr: AppStartupStruct[] = []; for (let i = 0; i < len; i++) { diff --git a/ide/src/trace/database/data-trafic/process/ThreadDataReceiver.ts b/ide/src/trace/database/data-trafic/process/ThreadDataReceiver.ts index b11dca41d769fd76f27fdcdb4304f83320b341f9..0ea78e3d0c5e42eed91c14ed5141021d34602a8d 100644 --- a/ide/src/trace/database/data-trafic/process/ThreadDataReceiver.ts +++ b/ide/src/trace/database/data-trafic/process/ThreadDataReceiver.ts @@ -15,88 +15,104 @@ import { threadStateList } from '../utils/AllMemoryCache'; import { filterDataByGroup } from '../utils/DataFilter'; import { TraficEnum, threadStateToNumber } from '../utils/QueryEnum'; -export const chartThreadDataSql = (args: any) => { +export const chartThreadDataSql = (args: unknown) => { return `select B.cpu, max(B.dur) AS dur, B.itid AS id, B.tid AS tid, B.state, B.pid, - B.ts - ${args.recordStartNS} AS startTime, ifnull(B.arg_setid, -1) AS argSetId, - ((B.ts - ${args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)})) AS px + B.ts - ${//@ts-ignore + args.recordStartNS} AS startTime, ifnull(B.arg_setid, -1) AS argSetId, + ((B.ts - ${//@ts-ignore + args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)})) AS px from thread_state AS B - where B.tid = ${args.tid} - and B.pid = ${args.pid} + where B.tid = ${//@ts-ignore + args.tid} + and B.pid = ${//@ts-ignore + args.pid} and B.state != 'Running' - and startTime + dur >= ${Math.floor(args.startNS)} - and startTime <= ${Math.floor(args.endNS)} + and startTime + dur >= ${Math.floor(//@ts-ignore + args.startNS)} + and startTime <= ${Math.floor(//@ts-ignore + args.endNS)} group by px union all select B.cpu, max(B.dur) AS dur, B.itid AS id, B.tid AS tid, B.state, - B.pid, B.ts - ${args.recordStartNS} AS startTime, ifnull(B.arg_setid, -1) AS argSetId, - ((B.ts - ${args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)})) AS px + B.pid, B.ts - ${//@ts-ignore + args.recordStartNS} AS startTime, ifnull(B.arg_setid, -1) AS argSetId, + ((B.ts - ${//@ts-ignore + args.recordStartNS}) / (${Math.floor((args.endNS - args.startNS) / args.width)})) AS px from thread_state AS B - where B.tid = ${args.tid} - and B.pid = ${args.pid} + where B.tid = ${//@ts-ignore + args.tid} + and B.pid = ${//@ts-ignore + args.pid} and B.state = 'Running' - and startTime + dur >= ${Math.floor(args.startNS)} - and startTime <= ${Math.floor(args.endNS)} + and startTime + dur >= ${Math.floor(//@ts-ignore + args.startNS)} + and startTime <= ${Math.floor(//@ts-ignore + args.endNS)} group by px; ;`; }; -export const sqlMem = (args: any): string => { - return `select B.cpu, B.dur AS dur, B.itid AS id, B.tid AS tid, B.state, B.pid, B.ts - ${args.recordStartNS} AS startTime, +export const sqlMem = (args: unknown): string => { + return `select B.cpu, B.dur AS dur, B.itid AS id, B.tid AS tid, B.state, B.pid, B.ts - ${//@ts-ignore + args.recordStartNS} AS startTime, ifnull(B.arg_setid, -1) AS argSetId from thread_state AS B - where B.tid = ${args.tid} - and B.pid = ${args.pid};`; + where B.tid = ${//@ts-ignore + args.tid} + and B.pid = ${//@ts-ignore + args.pid};`; }; -export function threadDataReceiver(data: any, proc: Function): void { - if (data.params.trafic === TraficEnum.Memory) { +export function threadDataReceiver(data: unknown, proc: Function): void {//@ts-ignore + if (data.params.trafic === TraficEnum.Memory) {//@ts-ignore let key = `${data.params.pid}-${data.params.tid}`; - if (!threadStateList.has(key)) { + if (!threadStateList.has(key)) {//@ts-ignore threadStateList.set(key, proc(sqlMem(data.params))); } let array = threadStateList.get(key) || []; let res = filterDataByGroup( array, 'startTime', - 'dur', - data.params.startNS, - data.params.endNS, + 'dur',//@ts-ignore + data.params.startNS,//@ts-ignore + data.params.endNS,//@ts-ignore data.params.width, undefined, + //@ts-ignore (a) => a.state === 'Running' ); arrayBufferHandler(data, res, true, array.length === 0); return; - } else { + } else {//@ts-ignore let sql = chartThreadDataSql(data.params); - let res = proc(sql); + let res = proc(sql);//@ts-ignore arrayBufferHandler(data, res, data.params.trafic !== TraficEnum.SharedArrayBuffer, false); } } -function arrayBufferHandler(data: any, res: any[], transfer: boolean, isEmpty: boolean): void { - let startTime = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime); - let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur); - let cpu = new Int8Array(transfer ? res.length : data.params.sharedArrayBuffers.cpu); - let id = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.id); - let tid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.tid); - let state = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.state); - let pid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.pid); +function arrayBufferHandler(data: unknown, res: unknown[], transfer: boolean, isEmpty: boolean): void {//@ts-ignore + let startTime = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.startTime);//@ts-ignore + let dur = new Float64Array(transfer ? res.length : data.params.sharedArrayBuffers.dur);//@ts-ignore + let cpu = new Int8Array(transfer ? res.length : data.params.sharedArrayBuffers.cpu);//@ts-ignore + let id = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.id);//@ts-ignore + let tid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.tid);//@ts-ignore + let state = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.state);//@ts-ignore + let pid = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.pid);//@ts-ignore let argSetID = new Int32Array(transfer ? res.length : data.params.sharedArrayBuffers.argSetID); - res.forEach((it, i) => { - data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processThreadData); - startTime[i] = it.startTime; - dur[i] = it.dur; - cpu[i] = it.cpu; - id[i] = it.id; - tid[i] = it.tid; - state[i] = threadStateToNumber(it.state); - pid[i] = it.pid; + res.forEach((it, i) => {//@ts-ignore + data.params.trafic === TraficEnum.ProtoBuffer && (it = it.processThreadData);//@ts-ignore + startTime[i] = it.startTime;//@ts-ignore + dur[i] = it.dur;//@ts-ignore + cpu[i] = it.cpu;//@ts-ignore + id[i] = it.id;//@ts-ignore + tid[i] = it.tid;//@ts-ignore + state[i] = threadStateToNumber(it.state);//@ts-ignore + pid[i] = it.pid;//@ts-ignore argSetID[i] = it.argSetId; }); (self as unknown as Worker).postMessage( - { - id: data.id, + {//@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: transfer ? { diff --git a/ide/src/trace/database/data-trafic/process/ThreadDataSender.ts b/ide/src/trace/database/data-trafic/process/ThreadDataSender.ts index faec460c4cadd3e15950d8c394029622839bf862..97a3e590f8f053c9ecd7dfaee485966bac511166 100644 --- a/ide/src/trace/database/data-trafic/process/ThreadDataSender.ts +++ b/ide/src/trace/database/data-trafic/process/ThreadDataSender.ts @@ -49,7 +49,7 @@ export function threadDataSender( trafic: trafic, sharedArrayBuffers: row.sharedArrayBuffers, }, - (res: any, len: number, transfer: boolean, isEmpty: boolean): void => { + (res: unknown, len: number, transfer: boolean, isEmpty: boolean): void => { if (isEmpty) { resolve(true); } else { @@ -60,15 +60,15 @@ export function threadDataSender( }); } -function arrayBufferHandler(buffers: any, len: number): ThreadStruct[] { - let outArr: ThreadStruct[] = []; - let startTime = new Float64Array(buffers.startTime); - let dur = new Float64Array(buffers.dur); - let cpu = new Int8Array(buffers.cpu); - let id = new Int32Array(buffers.id); - let tid = new Int32Array(buffers.tid); - let state = new Int32Array(buffers.state); - let pid = new Int32Array(buffers.pid); +function arrayBufferHandler(buffers: unknown, len: number): ThreadStruct[] { + let outArr: ThreadStruct[] = [];//@ts-ignore + let startTime = new Float64Array(buffers.startTime);//@ts-ignore + let dur = new Float64Array(buffers.dur);//@ts-ignore + let cpu = new Int8Array(buffers.cpu);//@ts-ignore + let id = new Int32Array(buffers.id);//@ts-ignore + let tid = new Int32Array(buffers.tid);//@ts-ignore + let state = new Int32Array(buffers.state);//@ts-ignore + let pid = new Int32Array(buffers.pid);//@ts-ignore let argSetID = new Int32Array(buffers.argSetID); for (let i = 0; i < len; i++) { outArr.push({ diff --git a/ide/src/trace/database/data-trafic/utils/AllMemoryCache.ts b/ide/src/trace/database/data-trafic/utils/AllMemoryCache.ts index 46ef28c4697b47d3c528af2050d5c4c92b865e09..a9586516e6ab43ab35b06f271de8c267b1afa439 100644 --- a/ide/src/trace/database/data-trafic/utils/AllMemoryCache.ts +++ b/ide/src/trace/database/data-trafic/utils/AllMemoryCache.ts @@ -19,41 +19,41 @@ import { resetAbility } from '../VmTrackerDataReceiver'; import { resetDynamicEffect } from '../FrameDynamicEffectReceiver'; import { resetEnergyEvent } from '../EnergySysEventReceiver'; // thread_state 表缓存 -export const sliceList: Map> = new Map(); +export const sliceList: Map> = new Map(); //cpu 泳道 memory 缓存 -export const cpuList: Map> = new Map(); +export const cpuList: Map> = new Map(); //clock 泳道 memory 模式缓存 -export const clockList: Map> = new Map(); +export const clockList: Map> = new Map(); //cpu freq 泳道 memory模式缓存 -export const cpuFreqList: Map> = new Map(); +export const cpuFreqList: Map> = new Map(); //cpu freq limit 泳道 memory模式缓存 -export const cpuFreqLimitList: Map> = new Map(); +export const cpuFreqLimitList: Map> = new Map(); //cpu state 泳道 memory模式缓存 -export const cpuStateList: Map> = new Map(); +export const cpuStateList: Map> = new Map(); //thread call stack 泳道图 memory 模式缓存 -export const threadCallStackList: Map> = new Map(); +export const threadCallStackList: Map> = new Map(); //irq 泳道图 memory 模式缓存 -export const lrqList: Map> = new Map(); +export const lrqList: Map> = new Map(); //Lost Frame 泳道图 memory 模式缓存 -export const lostFrameList: Map> = new Map(); +export const lostFrameList: Map> = new Map(); //Hitch Time 泳道图 memory 模式缓存 -export const hitchTimeList: Map> = new Map(); +export const hitchTimeList: Map> = new Map(); //进程 泳道图 memory 模式缓存 -export const processList: Map> = new Map(); +export const processList: Map> = new Map(); //进程内存 泳道图 memory 模式缓存数据 -export const memList: Map> = new Map(); +export const memList: Map> = new Map(); //线程状态 泳道图 memory 模式缓存 -export const threadStateList: Map> = new Map(); +export const threadStateList: Map> = new Map(); //进程下卡顿丢帧 泳道图 memory 模式缓存 -export const processFrameList: Map> = new Map(); +export const processFrameList: Map> = new Map(); //hiSysEvent 泳道图 memory 模式缓存 -export const hiSysEventList: Map> = new Map(); +export const hiSysEventList: Map> = new Map(); //hiLog 泳道图 memory 模式缓存 -export const hiLogList: Map> = new Map(); +export const hiLogList: Map> = new Map(); //energy 泳道图 memory 模式缓存 -export const energyList: Map> = new Map(); -export function clearMemoryCache(data: any, proc: Function) { +export const energyList: Map> = new Map(); +export function clearMemoryCache(data: unknown, proc: Function) { sliceList.clear(); cpuList.clear(); clockList.clear(); @@ -81,7 +81,8 @@ export function clearMemoryCache(data: any, proc: Function) { resetEnergyEvent(); (self as unknown as Worker).postMessage( { - id: data.id, + //@ts-ignore + id: data.id,//@ts-ignore action: data.action, results: 'ok', len: 0, diff --git a/ide/src/trace/database/data-trafic/utils/DataFilter.ts b/ide/src/trace/database/data-trafic/utils/DataFilter.ts index bac07bf1b75b22ccd1cab0001c60a6c0cff5890c..f2914d6dcd5f433d023e88b2be1892c5caf94aaa 100644 --- a/ide/src/trace/database/data-trafic/utils/DataFilter.ts +++ b/ide/src/trace/database/data-trafic/utils/DataFilter.ts @@ -13,7 +13,7 @@ * limitations under the License. */ export function filterDataByLayer( - list: any[], + list: unknown[], layerKey: string, startKey: string, durKey: string, @@ -24,36 +24,41 @@ export function filterDataByLayer( let pns = (endNS - startNS) / width; //每个像素多少ns let sliceArray = findRange(list, { startKey, durKey, startNS, endNS }); let groups = groupBy(sliceArray, layerKey); - let res: any[] = []; - Reflect.ownKeys(groups).map((key: any) => { - let slice = groups[key] as any[]; + let res: unknown[] = []; + Reflect.ownKeys( + //@ts-ignore + groups).map((key: unknown) => {//@ts-ignore + let slice = groups[key] as unknown[]; if (slice.length > 0) { let sum = 0; for (let i = 0; i < slice.length; i++) { if (i === slice.length - 1) { - if (slice[i][durKey] === undefined || slice[i][durKey] === null) { + if (//@ts-ignore + slice[i][durKey] === undefined || slice[i][durKey] === null) {//@ts-ignore slice[i][durKey] = (endNS || 0) - (slice[i][startKey] || 0); } } else { - if (slice[i][durKey] === undefined || slice[i][durKey] === null) { + if (//@ts-ignore + slice[i][durKey] === undefined || slice[i][durKey] === null) {//@ts-ignore slice[i][durKey] = (slice[i + 1][startKey] || 0) - (slice[i][startKey] || 0); } } - if (slice[i][durKey] >= pns || slice.length < 100) { + if (//@ts-ignore + slice[i][durKey] >= pns || slice.length < 100) {//@ts-ignore slice[i].v = true; } else { - if (i > 0) { + if (i > 0) {//@ts-ignore let c = slice[i][startKey] - slice[i - 1][startKey] - slice[i - 1][durKey]; - if (c < pns && sum < pns) { - sum += c + slice[i - 1][durKey]; + if (c < pns && sum < pns) {//@ts-ignore + sum += c + slice[i - 1][durKey];//@ts-ignore slice[i].v = false; - } else { + } else {//@ts-ignore slice[i].v = true; sum = 0; } } } - } + }//@ts-ignore res.push(...slice.filter((it) => it.v)); } }); @@ -61,32 +66,32 @@ export function filterDataByLayer( } export function filterDataByGroup( - list: any[], + list: unknown[], startKey: string, durKey: string, startNS: number, endNS: number, width: number, valueKey?: string, - filter?: (a: any) => boolean -): any[] { + filter?: (a: unknown) => boolean +): unknown[] { let arr = findRange(list, { startKey, durKey, startNS, endNS }); - arr = arr.map((it) => { + arr = arr.map((it) => {//@ts-ignore it.px = Math.floor(it[startKey] / ((endNS - startNS) / width)); return it; }); let group = groupBy(arr, 'px'); - let res: Set = new Set(); - Reflect.ownKeys(group).map((key: any): void => { - let arr = group[key] as any[]; - if (arr.length > 0) { + let res: Set = new Set();//@ts-ignore + Reflect.ownKeys(group).map((key: unknown): void => {//@ts-ignore + let arr = group[key] as unknown[]; + if (arr.length > 0) {//@ts-ignore res.add(arr.reduce((p, c) => (p[durKey] > c[durKey] ? p : c))); - if (valueKey) { + if (valueKey) {//@ts-ignore res.add(arr.reduce((p, c) => (p[valueKey] > c[valueKey] ? p : c))); } if (filter) { let filterArr = arr.filter((a) => filter(a)); - if (filterArr && filterArr.length > 0) { + if (filterArr && filterArr.length > 0) {//@ts-ignore res.add(filterArr.reduce((p, c) => (p[durKey] > c[durKey] ? p : c))); } } @@ -96,22 +101,24 @@ export function filterDataByGroup( } function filterDataByGroupWithoutValue( - list: any[], + list: unknown[], startKey: string, durKey: string, startNS: number, endNS: number, width: number ): unknown[] { - let arr: any[] = []; + let arr: unknown[] = []; // 标志位,判定何时进行新一轮数据统计处理 let flag: number = -1; for (let i = 0; i < list.length; i++) { // 筛选符合判断条件的数据,作进一步处理 + //@ts-ignore if (list[i][startKey] + list[i][durKey] >= startNS && list[i][startKey] <= endNS) { // 获取当前数据的像素值 - const px: number = Math.floor(list[i][startKey] / ((endNS - startNS) / width)); - list[i].px = px; + //@ts-ignore + const px: number = Math.floor(list[i][startKey] / ((endNS - startNS) / width));//@ts-ignore + list[i].px = px;//@ts-ignore if (flag === px && arr[arr.length - 1] && list[i][durKey] > arr[arr.length - 1][durKey]) { arr[arr.length - 1] = list[i]; } @@ -125,7 +132,7 @@ function filterDataByGroupWithoutValue( } export function filterDataByGroupLayer( - list: any[], + list: unknown[], layerKey: string, startKey: string, durKey: string, @@ -134,40 +141,41 @@ export function filterDataByGroupLayer( width: number ): unknown[] { let arr = findRange(list, { startKey, durKey, startNS, endNS }); - arr = arr.map((it) => { + arr = arr.map((it) => {//@ts-ignore it.px = Math.floor(it[startKey] / ((endNS - startNS) / width) + it[layerKey] * width); //设置临时变量durTmp 用于参与计算,分组后有dur为-1的数据按最长宽度显示 - it.durTmp = + //@ts-ignore + it.durTmp =//@ts-ignore it[durKey] === -1 || it[durKey] === null || it[durKey] === undefined ? endNS - it[startKey] : it[durKey]; return it; }); let group = groupBy(arr, 'px'); - let res: any[] = []; - Reflect.ownKeys(group).map((key: any) => { - let childArray = (group[key] as any[]).reduce((p, c) => (p.durTmp > c.durTmp ? p : c)); + let res: unknown[] = [];//@ts-ignore + Reflect.ownKeys(group).map((key: unknown) => {//@ts-ignore + let childArray = (group[key] as unknown[]).reduce((p, c) => (p.durTmp > c.durTmp ? p : c)); res.push(childArray); }); return res; } -function groupBy(array: Array, key: string): any { - return array.reduce((pre, current, index, arr) => { +function groupBy(array: Array, key: string): unknown { + return array.reduce((pre, current, index, arr) => {//@ts-ignore (pre[current[key]] = pre[current[key]] || []).push(current); return pre; }, {}); } function findRange( - fullData: Array, + fullData: Array, condition: { startKey: string; startNS: number; durKey: string; endNS: number; } -): Array { +): Array { return fullData.filter( - (it) => + (it) =>//@ts-ignore it[condition.startKey] + it[condition.durKey] >= condition.startNS && it[condition.startKey] <= condition.endNS ); } diff --git a/ide/src/trace/database/data-trafic/utils/ExecProtoForWorker.ts b/ide/src/trace/database/data-trafic/utils/ExecProtoForWorker.ts index 6edd66446d27cdf8657cd93dbc061644151f9c79..e288a4a93f4be514d0b15353969b04563111ae22 100644 --- a/ide/src/trace/database/data-trafic/utils/ExecProtoForWorker.ts +++ b/ide/src/trace/database/data-trafic/utils/ExecProtoForWorker.ts @@ -80,9 +80,9 @@ import { cpuFreqDataReceiver } from '../cpu/CpuFreqDataReceiver'; import { lostFrameReceiver } from './../LostFrameReceiver'; import { sliceReceiver, sliceSPTReceiver } from '../SliceReceiver'; - -const traficHandlers: Map = new Map([]); -export const execProtoForWorker = (data: any, proc: Function): void => traficHandlers.get(data.name)?.(data, proc); +// @ts-ignore +const traficHandlers: Map = new Map([]);// @ts-ignore +export const execProtoForWorker = (data: unknown, proc: Function): void => traficHandlers.get(data.name)?.(data, proc); traficHandlers.set(QueryEnum.ClearMemoryCache, clearMemoryCache); traficHandlers.set(QueryEnum.CpuData, cpuDataReceiver); diff --git a/ide/src/trace/database/sql/Ability.sql.ts b/ide/src/trace/database/sql/Ability.sql.ts index 3205768fa7e8c79d969c5a52f8fe7bef92066259..fb901aba1d2a1526ef23d3ec9f9d3fa886168801 100644 --- a/ide/src/trace/database/sql/Ability.sql.ts +++ b/ide/src/trace/database/sql/Ability.sql.ts @@ -345,7 +345,8 @@ export const queryPacketsOutAbilityData = (): Promise> => +export const queryAbilityExits = ()://@ts-ignore + Promise> => query( 'queryAbilityExits', `select @@ -354,7 +355,8 @@ export const queryAbilityExits = (): Promise> => where s.event_name in ('trace_diskio','trace_network', 'trace_cpu_usage','sys_memory') and s.stat_type ='received' and s.count > 0` ); -export const queryCPuAbilityMaxData = (): Promise> => +export const queryCPuAbilityMaxData = ()://@ts-ignore + Promise> => query( 'queryCPuAbilityMaxData', `select ifnull(max(total_load),0) as totalLoad, @@ -393,7 +395,8 @@ export const queryDmaAbilityData = (): Promise> => LIMIT 1;` ); // Ability Monitor Purgeable泳道图 -export const queryPurgeableSysData = (isPin?: boolean): Promise> => { +export const queryPurgeableSysData = (isPin?: boolean)://@ts-ignore + Promise> => { const pinCondition = isPin ? ' AND a.ref_count > 0' : ''; const names = isPin ? " ('sys.mem.pined.purg')" : "('sys.mem.active.purg','sys.mem.inactive.purg')"; return query( @@ -439,7 +442,8 @@ export const querySysPurgeableTab = ( rightNs: number, dur: number, isPin?: boolean -): Promise> => { +)://@ts-ignore + Promise> => { let pinsql = isPin ? ' AND ref_count > 0' : ''; const names = isPin ? " ('sys.mem.pined.purg')" : "('sys.mem.active.purg','sys.mem.inactive.purg')"; return query( @@ -480,7 +484,8 @@ export const querySysPurgeableTab = ( }; //Ability Monitor Purgeable 点选 tab页 -export const querySysPurgeableSelectionTab = (startNs: number, isPin?: boolean): Promise> => { +export const querySysPurgeableSelectionTab = (startNs: number, isPin?: boolean)://@ts-ignore + Promise> => { const pinSql = isPin ? ' AND ref_count > 0' : ''; const names = isPin ? " ('sys.mem.pined.purg')" : "('sys.mem.active.purg','sys.mem.inactive.purg')"; return query( diff --git a/ide/src/trace/database/sql/Clock.sql.ts b/ide/src/trace/database/sql/Clock.sql.ts index 9d9558c860789aabdf84791ac7e3a9dc1af417dd..6dced5e19d9143c1728b1ebabc53b732eb7af5b7 100644 --- a/ide/src/trace/database/sql/Clock.sql.ts +++ b/ide/src/trace/database/sql/Clock.sql.ts @@ -63,7 +63,8 @@ order by measure.ts)) select s.filter_id as filterId,s.ts-r.start_ts as startNS,s.type,s.value,s.dur from state s,trace_range r`, { $clockName: clockName } ); -export const queryBootTime = (): Promise> => +export const queryBootTime = ()://@ts-ignore + Promise> => query( 'queryBootTime', `select CS.ts -TR.start_ts as ts ,clock_name from clock_snapshot as CS ,trace_range as TR diff --git a/ide/src/trace/database/sql/Cpu.sql.ts b/ide/src/trace/database/sql/Cpu.sql.ts index f0d70f1860f425a47ab1c60094e22379e7827cc7..302db608d01ccb5ad3124785979eea4907a051ae 100644 --- a/ide/src/trace/database/sql/Cpu.sql.ts +++ b/ide/src/trace/database/sql/Cpu.sql.ts @@ -155,7 +155,8 @@ export const getTabCounters = ( processFilterIds: Array, virtualFilterIds: Array, startTime: number -): Promise => { +)://@ts-ignore + Promise => { let processSql = `select t1.filter_id as trackId, t2.name, @@ -202,8 +203,9 @@ export const getTabCounters = ( } return query('getTabCounters', sql, {}); }; -export const getTabCpuByProcess = (cpus: Array, leftNS: number, rightNS: number): Promise => - query( +export const getTabCpuByProcess = (cpus: Array, leftNS: number, rightNS: number)://@ts-ignore + Promise =>//@ts-ignore + query( 'getTabCpuByProcess', ` select @@ -316,7 +318,8 @@ export const queryCpuFreqData = (cpu: number): Promise> => { $cpu: cpu } ); -export const queryCpuMax = (): Promise> => +export const queryCpuMax = ()://@ts-ignore + Promise> => query( 'queryCpuMax', ` @@ -332,7 +335,8 @@ export const queryCpuMax = (): Promise> => export const queryCpuDataCount = (): Promise => query('queryCpuDataCount', 'select count(1) as count,cpu from thread_state where cpu not null group by cpu'); -export const queryCpuCount = (): Promise> => +export const queryCpuCount = ()://@ts-ignore + Promise> => query( 'queryCpuCount', ` @@ -354,7 +358,8 @@ export const queryCpuSchedSlice = (): Promise> => from sched_slice,trace_range;` ); -export const queryCpuStateFilter = (): Promise> => +export const queryCpuStateFilter = ()://@ts-ignore + Promise> => query( 'queryCpuStateFilter', `select cpu,id as filterId @@ -363,7 +368,8 @@ export const queryCpuStateFilter = (): Promise> => {} ); -export const queryCpuState = (cpuFilterId: number): Promise> => +export const queryCpuState = (cpuFilterId: number)://@ts-ignore + Promise> => query( 'queryCpuState', ` @@ -374,7 +380,8 @@ export const queryCpuState = (cpuFilterId: number): Promise> => { $filterId: cpuFilterId } ); -export const queryCpuMaxFreq = (): Promise> => +export const queryCpuMaxFreq = ()://@ts-ignore + Promise> => query( 'queryCpuMaxFreq', ` @@ -518,7 +525,8 @@ export const queryCpuFreqFilterId = (): Promise< name='cpu_frequency' ` ); -export const searchCpuData = (keyword: string): Promise> => { +export const searchCpuData = (keyword: string)://@ts-ignore + Promise> => { let id = parseInt(keyword); let sql = ` select B.pid as processId, @@ -546,7 +554,8 @@ export const getTabPaneCounterSampleData = ( leftNs: number, rightNs: number, cpuStateFilterIds: Array -): Promise> => { +)://@ts-ignore + Promise> => { let str = ''; if (cpuStateFilterIds.length > 0) { str = ` and filter_id in (${cpuStateFilterIds.join(',')})`; @@ -562,9 +571,11 @@ export const getTabPaneCounterSampleData = ( { $leftNs: leftNs, $rightNs: rightNs } ); }; -export const queryJsCpuProfilerConfig = (): Promise> => +export const queryJsCpuProfilerConfig = ()://@ts-ignore + Promise> => query('queryJsCpuProfilerConfig', `SELECT pid, type, enable_cpu_Profiler as enableCpuProfiler FROM js_config`); -export const queryJsCpuProfilerData = (): Promise> => +export const queryJsCpuProfilerData = ()://@ts-ignore + Promise> => query('queryJsCpuProfilerData', `SELECT 1 WHERE EXISTS(select 1 from js_cpu_profiler_node)`); export const querySystemCallsTop = (): Promise< Array<{ @@ -629,7 +640,8 @@ export const querySystemCallsTop = (): Promise< DESC LIMIT 10` ); -export const queryWakeupListPriority = (itid: number[], ts: number[], cpus: number[]): Promise> => +export const queryWakeupListPriority = (itid: number[], ts: number[], cpus: number[])://@ts-ignore + Promise> => query( 'queryWakeupListPriority', ` @@ -647,7 +659,8 @@ export const getCpuLimitFreqBoxSelect = ( cpu: string; }>, rightNS: number -): Promise> => { +)://@ts-ignore + Promise> => { let ids = []; let condition = `(case`; for (let item of arr) { @@ -691,7 +704,8 @@ export const getCpuLimitFreqId = (): Promise> => {} ); -export const getCpuLimitFreqMax = (filterIds: string): Promise> => { +export const getCpuLimitFreqMax = (filterIds: string)://@ts-ignore + Promise> => { return query( 'getCpuLimitFreqMax', ` diff --git a/ide/src/trace/database/sql/Func.sql.ts b/ide/src/trace/database/sql/Func.sql.ts index d004dd119967d844f2eb709aa03e8acb876ce98e..2a664ed8507293c4ba09642fc788aaa41e879002 100644 --- a/ide/src/trace/database/sql/Func.sql.ts +++ b/ide/src/trace/database/sql/Func.sql.ts @@ -107,7 +107,8 @@ export const querySingleFuncNameCycle = ( } ); -export const queryAllFuncNames = (): Promise> => { +export const queryAllFuncNames = ()://@ts-ignore + Promise> => { return query( 'queryAllFuncNames', ` @@ -115,7 +116,8 @@ export const queryAllFuncNames = (): Promise> => { ); }; -export const queryProcessAsyncFunc = (traceRange: { startTs: number; endTs: number }): Promise> => +export const queryProcessAsyncFunc = (traceRange: { startTs: number; endTs: number })://@ts-ignore + Promise> => query( 'queryProcessAsyncFunc', `select tid, @@ -131,7 +133,8 @@ export const queryProcessAsyncFunc = (traceRange: { startTs: number; endTs: numb {} ); -export const getMaxDepthByTid = (): Promise> => +export const getMaxDepthByTid = ()://@ts-ignore + Promise> => query( 'getMaxDepthByTid', `SELECT @@ -250,7 +253,8 @@ export const getTabSlicesAsyncFunc = ( asyncPid: Array, leftNS: number, rightNS: number -): Promise> => +)://@ts-ignore + Promise> => query( 'getTabSlicesAsyncFunc', ` @@ -336,7 +340,8 @@ export const queryHeapFunction = (fileId: number): Promise> => +export const queryHeapTraceNode = (fileId: number)://@ts-ignore + Promise> => query( 'queryHeapTraceNode', `SELECT F.name, diff --git a/ide/src/trace/database/sql/Gpu.sql.ts b/ide/src/trace/database/sql/Gpu.sql.ts index 1008f43a9805d9f70a3a1a582a9eb13f11db046e..00e463d8e62202287a5dc340b73151af9d4bf8b0 100644 --- a/ide/src/trace/database/sql/Gpu.sql.ts +++ b/ide/src/trace/database/sql/Gpu.sql.ts @@ -238,7 +238,8 @@ where window_name_id != 0 and A.ts < TR.end_ts ` ); -export const queryGpuDur = (id: number): Promise => +export const queryGpuDur = (id: number)://@ts-ignore + Promise => query( 'queryGpuDur', ` diff --git a/ide/src/trace/database/sql/Irq.sql.ts b/ide/src/trace/database/sql/Irq.sql.ts index 2f21bff568f881ca72b5d99e14f950c45f47e893..e3424105748b4d3d1443269533ae0bc0e8e8eafd 100644 --- a/ide/src/trace/database/sql/Irq.sql.ts +++ b/ide/src/trace/database/sql/Irq.sql.ts @@ -41,7 +41,8 @@ trace_range t where i.callid = ${callid} and i.cat = 'softirq' return query('queryIrqData', cat === 'irq' ? sqlIrq : sqlSoftIrq, {}); }; -export const queryIrqDataBoxSelect = (callIds: Array, startNS: number, endNS: number): Promise> => { +export const queryIrqDataBoxSelect = (callIds: Array, startNS: number, endNS: number)://@ts-ignore + Promise> => { let sqlIrq = ` select case when i.cat = 'ipi' then 'IPI' || i.name else i.name end as irqName, sum(dur) as wallDuration, @@ -62,7 +63,8 @@ export const querySoftIrqDataBoxSelect = ( callIds: Array, startNS: number, endNS: number -): Promise> => { +)://@ts-ignore + Promise> => { let sqlIrq = ` select i.name as irqName, sum(dur) as wallDuration, diff --git a/ide/src/trace/database/sql/Janks.sql.ts b/ide/src/trace/database/sql/Janks.sql.ts index 04163613e754b94785d40251c37e3cdce8306098..13534112de83fc317846c65b55afba0d4f6aecc0 100644 --- a/ide/src/trace/database/sql/Janks.sql.ts +++ b/ide/src/trace/database/sql/Janks.sql.ts @@ -71,7 +71,8 @@ export const queryExpectedFrameDate = (): Promise> => AND fs.type = 1 ORDER BY ts;` ); -export const queryJumpJanksData = (processId: number, vsync: number): Promise> => +export const queryJumpJanksData = (processId: number, vsync: number)://@ts-ignore + Promise> => query( 'queryJumpJanksData', ` @@ -106,7 +107,8 @@ export const queryAllJankProcess = (): Promise< LEFT JOIN process AS p ON a.ipid = p.ipid ` ); -export const queryAllActualData = (): Promise> => +export const queryAllActualData = ()://@ts-ignore + Promise> => query( 'queryAllActualData', ` @@ -128,7 +130,8 @@ export const queryAllActualData = (): Promise> => AND a.flag <> 2 ORDER BY a.ipid, ts;` ); -export const queryActualFrameDate = (): Promise> => +export const queryActualFrameDate = ()://@ts-ignore + Promise> => query( 'queryActualFrameDate', `SELECT @@ -178,14 +181,15 @@ export const queryActualFrameDate = (): Promise> => NULL AS rs_name FROM frame_slice AS fs LEFT JOIN process AS pro ON pro.id = fs.ipid - LEFT JOIN trace_range TR + LEFT JOIN trace_range TRs WHERE fs.dst IS NULL AND pro.name NOT LIKE '%render_service%' AND fs.type = 0 AND fs.flag <> 2 ORDER BY ts;` ); -export const querySelectRangeData = (allPid: Array, leftNs: number, rightNs: number): Promise> => +export const querySelectRangeData = (allPid: Array, leftNs: number, rightNs: number)://@ts-ignore + Promise> => query( 'querySelectRangeData', ` diff --git a/ide/src/trace/database/sql/Memory.sql.ts b/ide/src/trace/database/sql/Memory.sql.ts index f1108a89966ea84576cf50fb20497a3fc7fbdaf9..280d5d5af092b67c786d1a0e2f9e6eb2e0e79b8d 100644 --- a/ide/src/trace/database/sql/Memory.sql.ts +++ b/ide/src/trace/database/sql/Memory.sql.ts @@ -135,17 +135,20 @@ export const getTabVirtualMemoryType = (startTime: number, endTime: number): Pro { $startTime: startTime, $endTime: endTime }, 'exec' ); -export const queryNativeMemoryRealTime = (): Promise> => +export const queryNativeMemoryRealTime = ()://@ts-ignore + Promise> => query( 'queryNativeMemoryRealTime', `select cs.ts,cs.clock_name from datasource_clockid dc left join clock_snapshot cs on dc.clock_id = cs.clock_id where data_source_name = 'memory-plugin' or data_source_name = 'nativehook' `, {} ); -export const queryJsMemoryData = (): Promise> => +export const queryJsMemoryData = ()://@ts-ignore + Promise> => query('queryJsMemoryData', `SELECT 1 WHERE EXISTS(SELECT 1 FROM js_heap_nodes)`); -export const queryVmTrackerShmData = (iPid: number): Promise> => +export const queryVmTrackerShmData = (iPid: number)://@ts-ignore + Promise> => query( 'queryVmTrackerShmData', `SELECT (A.ts - B.start_ts) as startNs, @@ -160,7 +163,8 @@ export const queryVmTrackerShmData = (iPid: number): Promise> => GROUP by A.ts`, {} ); -export const queryVmTrackerShmSelectionData = (startNs: number, ipid: number): Promise> => +export const queryVmTrackerShmSelectionData = (startNs: number, ipid: number)://@ts-ignore + Promise> => query( 'queryVmTrackerShmSelectionData', `SELECT (A.ts - B.start_ts) as startNS,A.ipid, @@ -186,7 +190,8 @@ export const queryMemoryConfig = (): Promise> => ;` ); // VM Tracker Purgeable泳道图 -export const queryPurgeableProcessData = (ipid: number, isPin?: boolean): Promise> => { +export const queryPurgeableProcessData = (ipid: number, isPin?: boolean)://@ts-ignore + Promise> => { const pinSql = isPin ? ' AND a.ref_count > 0' : ''; const names = isPin ? " ('mem.purg_pin')" : "('mem.purg_sum')"; return query( @@ -221,9 +226,11 @@ export const queryPurgeableProcessData = (ipid: number, isPin?: boolean): Promis GROUP BY startNs` ); }; -export const queryVirtualMemory = (): Promise> => +export const queryVirtualMemory = ()://@ts-ignore + Promise> => query('queryVirtualMemory', `select id,name from sys_event_filter where type='sys_virtual_memory_filter'`); -export const queryVirtualMemoryData = (filterId: number): Promise> => +export const queryVirtualMemoryData = (filterId: number)://@ts-ignore + Promise> => query( 'queryVirtualMemoryData', `select ts-${ @@ -325,7 +332,8 @@ export const queryTraceMemoryUnAgg = (): Promise< order by filter.ipid` ); -export const queryMemoryMaxData = (memoryName: string): Promise> => +export const queryMemoryMaxData = (memoryName: string)://@ts-ignore + Promise> => query( 'queryMemoryMaxData', `SELECT ifnull(max(m.value),0) as maxValue, @@ -336,7 +344,8 @@ export const queryMemoryMaxData = (memoryName: string): Promise> => `, { $memoryName: memoryName } ); -export const getTabPaneVirtualMemoryStatisticsData = (leftNs: number, rightNs: number): Promise> => +export const getTabPaneVirtualMemoryStatisticsData = (leftNs: number, rightNs: number)://@ts-ignore + Promise> => query( 'getTabPaneVirtualMemoryStatisticsData', ` @@ -360,7 +369,8 @@ export const getTabPaneVirtualMemoryStatisticsData = (leftNs: number, rightNs: n `, { $leftNs: leftNs, $rightNs: rightNs } ); -export const getFileSysVirtualMemoryChartData = (): Promise> => +export const getFileSysVirtualMemoryChartData = ()://@ts-ignore + Promise> => query( 'getFileSysVirtualMemoryChartData', ` @@ -374,7 +384,8 @@ export const getFileSysVirtualMemoryChartData = (): Promise> => {}, 'exec' ); -export const hasFileSysData = (): Promise> => +export const hasFileSysData = ()://@ts-ignore + Promise> => query( 'hasFileSysData', ` @@ -388,7 +399,8 @@ export const hasFileSysData = (): Promise> => `, {} ); -export const queryEbpfSamplesCount = (startTime: number, endTime: number, ipids: number[]): Promise> => +export const queryEbpfSamplesCount = (startTime: number, endTime: number, ipids: number[])://@ts-ignore + Promise> => query( 'queryEbpfSamplesCount', ` @@ -404,7 +416,8 @@ fsCount, `, { $startTime: startTime, $endTime: endTime } ); -export const queryisExistsShmData = (iPid: number): Promise> => +export const queryisExistsShmData = (iPid: number)://@ts-ignore + Promise> => query( 'queryisExistsShmData', `SELECT EXISTS ( @@ -422,7 +435,8 @@ export const queryVmTrackerShmSizeData = ( rightNs: number, iPid: number, dur: number -): Promise> => +)://@ts-ignore + Promise> => query( 'queryVmTrackerShmSizeData', `SELECT ( A.ts - B.start_ts ) AS startNS, @@ -439,7 +453,8 @@ export const queryVmTrackerShmSizeData = ( AND ipid = ${iPid}`, {} ); -export const queryisExistsPurgeableData = (ipid: number, isPin?: boolean): Promise> => { +export const queryisExistsPurgeableData = (ipid: number, isPin?: boolean)://@ts-ignore + Promise> => { const pinSql = isPin ? ' AND a.ref_count > 0' : ''; const names = isPin ? " ('mem.purg_pin')" : "('mem.purg_sum')"; return query( diff --git a/ide/src/trace/database/sql/NativeHook.sql.ts b/ide/src/trace/database/sql/NativeHook.sql.ts index 89d36d7a5efab8ab32a0357696d85d06b283cb50..504cfb737011247d72e9067b2af020b8d541ebb7 100644 --- a/ide/src/trace/database/sql/NativeHook.sql.ts +++ b/ide/src/trace/database/sql/NativeHook.sql.ts @@ -20,7 +20,8 @@ export const queryNativeHookResponseTypes = ( rightNs: number, types: Array, isStatistic: boolean -): Promise> => { +)://@ts-ignore + Promise> => { const table = isStatistic ? 'native_hook_statistic' : 'native_hook'; const tsKey = isStatistic ? 'ts' : 'start_ts'; const type = isStatistic ? 'type' : 'event_type'; @@ -130,7 +131,8 @@ export const queryNativeHookStatisticsSubType = ( { $leftNs: leftNs, $rightNs: rightNs } ); -export const queryNativeHookSubType = (leftNs: number, rightNs: number, ipid: number): Promise> => +export const queryNativeHookSubType = (leftNs: number, rightNs: number, ipid: number)://@ts-ignore + Promise> => query( 'queryNativeHookSubType', `select distinct( @@ -148,7 +150,8 @@ where event_type = 'MmapEvent' and { $leftNs: leftNs, $rightNs: rightNs } ); -export const queryNativeHookStatisticSubType = (leftNs: number, rightNs: number, ipid: number): Promise> => +export const queryNativeHookStatisticSubType = (leftNs: number, rightNs: number, ipid: number)://@ts-ignore + Promise> => query( 'queryNativeHookStatisticSubType', `SELECT DISTINCT diff --git a/ide/src/trace/database/sql/Perf.sql.ts b/ide/src/trace/database/sql/Perf.sql.ts index ac24ecfe6ec5e86e4a7ffdbbd1f32d1100103424..b19a0b958be1b0bf3b7dcf9fee77dea6da35b29e 100644 --- a/ide/src/trace/database/sql/Perf.sql.ts +++ b/ide/src/trace/database/sql/Perf.sql.ts @@ -21,7 +21,8 @@ import { GpuCountBean, SearchGpuFuncBean } from '../../bean/GpufreqBean'; export const queryPerfFiles = (): Promise> => query('queryPerfFiles', `select file_id as fileId,symbol,path from perf_files`, {}); -export const queryPerfCallChainName = (): Promise> => +export const queryPerfCallChainName = ()://@ts-ignore + Promise> => query('queryPerfCallChainName', `select callchain_id,depth,name from perf_callchain`, {}); export const queryPerfProcess = (): Promise> => @@ -142,9 +143,11 @@ select distinct event_type_id from perf_sample); /** * HiPerf */ -export const queryHiPerfEventList = (): Promise> => +export const queryHiPerfEventList = ()://@ts-ignore + Promise> => query('queryHiPerfEventList', `select id,report_value from perf_report where report_type='config_name'`, {}); -export const queryHiPerfEventListData = (eventTypeId: number): Promise> => +export const queryHiPerfEventListData = (eventTypeId: number)://@ts-ignore + Promise> => query( 'queryHiPerfEventListData', ` @@ -158,7 +161,8 @@ export const queryHiPerfEventListData = (eventTypeId: number): Promise> => +export const queryHiPerfEventData = (eventTypeId: number, cpu: number)://@ts-ignore + Promise> => query( 'queryHiPerfEventList', ` @@ -173,7 +177,8 @@ export const queryHiPerfEventData = (eventTypeId: number, cpu: number): Promise< `, { $eventTypeId: eventTypeId, $cpu: cpu } ); -export const queryHiPerfCpuData = (cpu: number): Promise> => +export const queryHiPerfCpuData = (cpu: number)://@ts-ignore + Promise> => query( 'queryHiPerfCpuData', ` @@ -185,21 +190,24 @@ export const queryHiPerfCpuData = (cpu: number): Promise> => and s.thread_id != 0;`, { $cpu: cpu } ); -export const queryHiPerfCpuMergeData = (): Promise> => +export const queryHiPerfCpuMergeData = ()://@ts-ignore + Promise> => query( 'queryHiPerfCpuData', `select s.callchain_id,(s.timestamp_trace-t.start_ts) startNS, event_count, event_type_id from perf_sample s,trace_range t where s.thread_id != 0;`, {} ); -export const queryHiPerfCpuMergeData2 = (): Promise> => +export const queryHiPerfCpuMergeData2 = ()://@ts-ignore + Promise> => query( 'queryHiPerfCpuData2', `select distinct cpu_id from perf_sample where thread_id != 0 order by cpu_id desc;`, {} ); -export const queryHiPerfProcessData = (pid: number): Promise> => +export const queryHiPerfProcessData = (pid: number)://@ts-ignore + Promise> => query( 'queryHiPerfProcessData', ` @@ -217,7 +225,8 @@ where pid = ${pid} and sp.thread_id != 0 `, { $pid: pid } ); -export const queryHiPerfThreadData = (tid: number): Promise> => +export const queryHiPerfThreadData = (tid: number)://@ts-ignore + Promise> => query( 'queryHiPerfThreadData', ` @@ -384,7 +393,8 @@ export const queryHiPerfProcessCount = ( cpus: Array, threads: Array, processes: Array -): Promise> => { +)://@ts-ignore + Promise> => { let str = ''; if (processes.length > 0) { str = ` and C.process_id in (${processes.join(',')})`; diff --git a/ide/src/trace/database/sql/ProcessThread.sql.ts b/ide/src/trace/database/sql/ProcessThread.sql.ts index 72808f9288692919746082c619f99bc2e81a8904..8206bab2d53a34fe33f7bf76ed07b47a85629192 100644 --- a/ide/src/trace/database/sql/ProcessThread.sql.ts +++ b/ide/src/trace/database/sql/ProcessThread.sql.ts @@ -120,7 +120,8 @@ export const querySchedThreadStates = ( tIds: Array, leftStartNs: number, rightEndNs: number -): Promise> => +)://@ts-ignore + Promise> => query( 'getTabThreadStates', ` @@ -152,7 +153,8 @@ export const querySingleCutData = ( tIds: string, leftStartNs: number, rightEndNs: number -): Promise> => +)://@ts-ignore + Promise> => query( 'querySingleCutData', ` @@ -186,7 +188,8 @@ export const queryLoopCutData = ( tIds: string, leftStartNs: number, rightEndNs: number -): Promise> => +)://@ts-ignore + Promise> => query( 'queryLoopCutData', ` @@ -211,7 +214,8 @@ export const queryLoopCutData = ( { $leftStartNs: leftStartNs, $rightEndNs: rightEndNs } ); // 框选区域内sleeping的时间 -export const getTabSleepingTime = (tIds: Array, leftNS: number, rightNS: number): Promise> => +export const getTabSleepingTime = (tIds: Array, leftNS: number, rightNS: number)://@ts-ignore + Promise> => query( 'getTabRunningPersent', ` @@ -236,7 +240,8 @@ export const getTabSleepingTime = (tIds: Array, leftNS: number, rightNS: ts;`, { $leftNS: leftNS, $rightNS: rightNS } ); -export const getTabThreadStatesCpu = (tIds: Array, leftNS: number, rightNS: number): Promise> => { +export const getTabThreadStatesCpu = (tIds: Array, leftNS: number, rightNS: number)://@ts-ignore + Promise> => { let sql = ` select B.pid, @@ -256,7 +261,8 @@ group by B.tid, B.pid, B.cpu;`; }; // 框选区域内running的时间 -export const getTabRunningPersent = (tIds: Array, leftNS: number, rightNS: number): Promise> => +export const getTabRunningPersent = (tIds: Array, leftNS: number, rightNS: number)://@ts-ignore + Promise> => query( 'getTabRunningPersent', ` @@ -299,7 +305,8 @@ from thread_state AS B where B.tid = $tid and B.pid = $pid;`, { $tid: tid, $pid: pid } ); -export const queryThreadNearData = (itid: number, startTime: number): Promise> => +export const queryThreadNearData = (itid: number, startTime: number)://@ts-ignore + Promise> => query( 'queryThreadNearData', ` @@ -421,7 +428,8 @@ export const getTabBoxChildData = ( `; return query('getTabBoxChildData', sql, {}); }; -export const getTabStartups = (ids: Array, leftNS: number, rightNS: number): Promise> => { +export const getTabStartups = (ids: Array, leftNS: number, rightNS: number)://@ts-ignore + Promise> => { let sql = ` select P.pid, @@ -437,7 +445,8 @@ order by start_name;`; return query('getTabStartups', sql, {}); }; -export const getTabStaticInit = (ids: Array, leftNS: number, rightNS: number): Promise> => { +export const getTabStaticInit = (ids: Array, leftNS: number, rightNS: number)://@ts-ignore + Promise> => { let sql = ` select P.pid, @@ -466,7 +475,8 @@ export const queryBinderArgsByArgset = (argset: number): Promise> => +export const queryProcessData = (pid: number, startNS: number, endNS: number)://@ts-ignore + Promise> => query( 'queryProcessData', ` @@ -482,7 +492,8 @@ where ta.cpu is not null and pid=$pid and startTime between $startNS and $endNS; } ); -export const queryProcessMem = (): Promise> => +export const queryProcessMem = ()://@ts-ignore + Promise> => query( 'queryProcessMem', ` @@ -499,7 +510,8 @@ export const queryProcessMem = (): Promise> => order by trackName;` ); -export const queryProcessThreadDataCount = (): Promise> => +export const queryProcessThreadDataCount = ()://@ts-ignore + Promise> => query( `queryProcessThreadDataCount`, `select pid,count(id) as count @@ -508,7 +520,8 @@ export const queryProcessThreadDataCount = (): Promise> => {} ); -export const queryProcessFuncDataCount = (): Promise> => +export const queryProcessFuncDataCount = ()://@ts-ignore + Promise> => query( `queryProcessFuncDataCount`, `select @@ -522,7 +535,8 @@ export const queryProcessFuncDataCount = (): Promise> => {} ); -export const queryProcessMemDataCount = (): Promise> => +export const queryProcessMemDataCount = ()://@ts-ignore + Promise> => query( `queryProcessMemDataCount`, `select @@ -554,10 +568,12 @@ export const queryProcessMemData = (trackId: number): Promise> => +export const queryThreads = ()://@ts-ignore + Promise> => query('queryThreads', `select id,tid,(ifnull(name,'Thread') || '(' || tid || ')') name from thread where id != 0;`); -export const queryDataDICT = (): Promise> => query('queryDataDICT', `select * from data_dict;`); +export const queryDataDICT = ()://@ts-ignore + Promise> => query('queryDataDICT', `select * from data_dict;`); export const queryAppStartupProcessIds = (): Promise> => query( @@ -589,7 +605,8 @@ WHERE )` ); -export const queryProcessContentCount = (): Promise> => +export const queryProcessContentCount = ()://@ts-ignore + Promise> => query(`queryProcessContentCount`, `select pid,switch_count,thread_count,slice_count,mem_count from process;`); export const queryProcessThreadsByTable = (): Promise> => query( @@ -672,7 +689,8 @@ order by start_name;`, { $pid: pids } ); -export const querySingleAppStartupsName = (pid: number): Promise> => +export const querySingleAppStartupsName = (pid: number)://@ts-ignore + Promise> => query( 'queryAllAppStartupsName', `select name from process @@ -689,7 +707,8 @@ where S.start_time between B.start_ts and B.end_ts group by p.pid;`, {} ); -export const queryAllThreadName = (): Promise> => { +export const queryAllThreadName = ()://@ts-ignore + Promise> => { return query( 'queryAllThreadName', ` @@ -697,7 +716,8 @@ export const queryAllThreadName = (): Promise> => { ); }; -export const queryAllProcessNames = (): Promise> => { +export const queryAllProcessNames = ()://@ts-ignore + Promise> => { return query( 'queryAllProcessNames', ` @@ -705,7 +725,8 @@ export const queryAllProcessNames = (): Promise> => { ); }; -export const queryRsProcess = (): Promise> => { +export const queryRsProcess = ()://@ts-ignore + Promise> => { return query( 'queryRsProcess', ` @@ -735,7 +756,8 @@ where P.pid = $pid;`, { $pid: pid } ); -export const queryThreadAndProcessName = (): Promise> => +export const queryThreadAndProcessName = ()://@ts-ignore + Promise> => query( 'queryThreadAndProcessName', ` @@ -814,7 +836,8 @@ export const queryProcessPurgeableSelectionTab = ( startNs: number, ipid: number, isPin?: boolean -): Promise> => { +)://@ts-ignore + Promise> => { const condition = isPin ? "'mem.purg_pin'" : "'mem.purg_sum'"; const pinSql = isPin ? ' AND ref_count > 0' : ''; return query( @@ -854,7 +877,8 @@ export const queryProcessPurgeableTab = ( dur: number, ipid: number, isPin?: boolean -): Promise> => { +)://@ts-ignore + Promise> => { const pinSql = isPin ? ' AND ref_count > 0' : ''; let filterSql = isPin ? "'mem.purg_pin'" : "'mem.purg_sum'"; return query( @@ -1127,7 +1151,8 @@ export const getTabSlices = ( pids: Array, leftNS: number, rightNS: number -): Promise> => +)://@ts-ignore + Promise> => query( 'getTabSlices', ` @@ -1161,7 +1186,8 @@ export const getTabSlices = ( wallDuration desc;`, { $leftNS: leftNS, $rightNS: rightNS } ); -export const getTabThreadStates = (tIds: Array, leftNS: number, rightNS: number): Promise> => +export const getTabThreadStates = (tIds: Array, leftNS: number, rightNS: number)://@ts-ignore + Promise> => query( 'getTabThreadStates', ` @@ -1188,7 +1214,8 @@ export const getTabThreadStates = (tIds: Array, leftNS: number, rightNS: ); // 查询线程状态详细信息 -export const getTabThreadStatesDetail = (tIds: Array, leftNS: number, rightNS: number): Promise> => +export const getTabThreadStatesDetail = (tIds: Array, leftNS: number, rightNS: number)://@ts-ignore + Promise> => query( 'getTabThreadStates', `select diff --git a/ide/src/trace/database/sql/Sdk.sql.ts b/ide/src/trace/database/sql/Sdk.sql.ts index f78002f7e8470edc9ce5012840b0386c539ee04e..3c99cc86e11a91b06d8750250102e6ceff682fb6 100644 --- a/ide/src/trace/database/sql/Sdk.sql.ts +++ b/ide/src/trace/database/sql/Sdk.sql.ts @@ -16,8 +16,8 @@ import { query } from '../SqlLite'; import { CounterStruct } from '../ui-worker/ProduceWorkerSdkCounter'; import { CounterSummary, SdkSliceSummary } from '../../bean/SdkSummary'; import { SdkSliceStruct } from '../ui-worker/ProduceWorkerSdkSlice'; - -export const querySdkCount = (sql: string, componentId: number, args?: any): Promise> => +//@ts-ignore +export const querySdkCount = (sql: string, componentId: number, args?: unknown): Promise> => query('querySdkCount', sql, args, 'exec-sdk-' + componentId); @@ -53,8 +53,11 @@ export const getTabSdkCounterLeftData = ( leftNs: number, counters: Array, componentId: number -): Promise> => - query( +): +//@ts-ignore +Promise> => +//@ts-ignore + query( 'getTabSdkCounterLeftData', sqlStr, { @@ -97,5 +100,7 @@ export const querySdkSliceData = ( { $column_id: column_id, $startNS: startNS, $endNS: endNS }, 'exec-sdk-' + componentId ); -export const queryCounterMax = (sqlStr: string, counter_id: number, componentId: number): Promise> => +export const queryCounterMax = (sqlStr: string, counter_id: number, componentId: number): +//@ts-ignore + Promise> => query('queryCounterMax', sqlStr, { $counter_id: counter_id }, 'exec-sdk-' + componentId); diff --git a/ide/src/trace/database/sql/SqlLite.sql.ts b/ide/src/trace/database/sql/SqlLite.sql.ts index e002379fcda1ec41ed6b4bd39fde1804945fb544..7b0688d76a518057032d663888bc45bf9dc6192e 100644 --- a/ide/src/trace/database/sql/SqlLite.sql.ts +++ b/ide/src/trace/database/sql/SqlLite.sql.ts @@ -102,7 +102,9 @@ export const getTabVirtualCounters = (virtualFilterIds: Array, startTime { $startTime: startTime } ); -export const queryAllSoInitNames = (): Promise> => { +export const queryAllSoInitNames = (): +//@ts-ignore + Promise> => { return query( 'queryAllSoInitNames', ` @@ -110,7 +112,9 @@ export const queryAllSoInitNames = (): Promise> => { ); }; -export const queryAllSrcSlices = (): Promise> => { +export const queryAllSrcSlices = (): +//@ts-ignore +Promise> => { return query( 'queryAllSrcSlices', ` @@ -197,7 +201,9 @@ export const querySelectTraceStats = (): Promise< }> > => query('querySelectTraceStats', 'select event_name,stat_type,count,source,serverity from stat'); -export const queryCustomizeSelect = (sql: string): Promise> => query('queryCustomizeSelect', sql); +export const queryCustomizeSelect = (sql: string): +//@ts-ignore +Promise> => query('queryCustomizeSelect', sql); export const queryDistributedTerm = (): Promise< Array<{ @@ -307,7 +313,9 @@ export const querySystemCalls = (): Promise< frequency desc limit 100` ); -export const queryNetWorkMaxData = (): Promise> => +export const queryNetWorkMaxData = (): +//@ts-ignore + Promise> => query( 'queryNetWorkMaxData', `select @@ -318,7 +326,9 @@ export const queryNetWorkMaxData = (): Promise> => from network` ); -export const queryDiskIoMaxData = (): Promise> => +export const queryDiskIoMaxData = (): +//@ts-ignore +Promise> => query( 'queryDiskIoMaxData', `select @@ -328,8 +338,12 @@ export const queryDiskIoMaxData = (): Promise> => ifnull(max(wr_count_speed),0) as writeOps from diskio` ); -export const queryStartTime = (): Promise> => query('queryStartTime', `SELECT start_ts FROM trace_range`); -export const queryBinderBySliceId = (id: number): Promise> => +export const queryStartTime = (): +//@ts-ignore + Promise> => query('queryStartTime', `SELECT start_ts FROM trace_range`); +export const queryBinderBySliceId = (id: number): +//@ts-ignore +Promise> => query( 'queryBinderBySliceId', `select c.ts-D.start_ts as startTs, @@ -342,7 +356,9 @@ where cat = 'binder' and c.id = $id;`, { $id: id } ); -export const queryThreadByItid = (itid: number, ts: number): Promise> => +export const queryThreadByItid = (itid: number, ts: number): +//@ts-ignore +Promise> => query( 'queryThreadByItid', `select tid,pid,c.dur,c.depth,c.name @@ -351,7 +367,9 @@ left join callstack c on t.itid = c.callid where itid = $itid and c.ts = $ts;`, { $itid: itid, $ts: ts } ); -export const queryBinderByArgsId = (id: number, startTime: number, isNext: boolean): Promise> => { +export const queryBinderByArgsId = (id: number, startTime: number, isNext: boolean): +//@ts-ignore + Promise> => { let sql = ` select c.ts - D.start_ts as startTs, c.dur, @@ -376,7 +394,9 @@ where cat = 'binder' and c.argsetid = $id`; }); }; -export const getTabPaneFilesystemStatisticsFather = (leftNs: number, rightNs: number): Promise> => +export const getTabPaneFilesystemStatisticsFather = (leftNs: number, rightNs: number): +//@ts-ignore + Promise> => query( 'getTabPaneFilesystemStatisticsFather', ` @@ -398,7 +418,9 @@ export const getTabPaneFilesystemStatisticsFather = (leftNs: number, rightNs: nu { $leftNs: leftNs, $rightNs: rightNs } ); -export const getTabPaneFilesystemStatisticsChild = (leftNs: number, rightNs: number): Promise> => +export const getTabPaneFilesystemStatisticsChild = (leftNs: number, rightNs: number): +//@ts-ignore + Promise> => query( 'getTabPaneFilesystemStatisticsChild', ` @@ -419,7 +441,9 @@ export const getTabPaneFilesystemStatisticsChild = (leftNs: number, rightNs: num { $leftNs: leftNs, $rightNs: rightNs } ); -export const getTabPaneFilesystemStatisticsAll = (leftNs: number, rightNs: number): Promise> => +export const getTabPaneFilesystemStatisticsAll = (leftNs: number, rightNs: number): +//@ts-ignore +Promise> => query( 'getTabPaneFilesystemStatisticsAll', ` @@ -436,7 +460,9 @@ export const getTabPaneFilesystemStatisticsAll = (leftNs: number, rightNs: numbe { $leftNs: leftNs, $rightNs: rightNs } ); -export const getTabPaneFilesystemStatistics = (leftNs: number, rightNs: number, types: number[]): Promise> => +export const getTabPaneFilesystemStatistics = (leftNs: number, rightNs: number, types: number[]): +//@ts-ignore + Promise> => query( 'getTabPaneFilesystemStatistics', ` @@ -466,7 +492,9 @@ export const getTabPaneIOTierStatisticsData = ( leftNs: number, rightNs: number, diskIOipids: Array -): Promise> => { +): +//@ts-ignore + Promise> => { let str = ''; if (diskIOipids.length > 0) { str = ` and i.ipid in (${diskIOipids.join(',')})`; @@ -499,7 +527,9 @@ export const getTabPaneFrequencySampleData = ( leftNs: number, rightNs: number, cpuFreqFilterIds: Array -): Promise> => { +): +//@ts-ignore + Promise> => { let str = ''; if (cpuFreqFilterIds.length > 0) { str = ` and filter_id in (${cpuFreqFilterIds.join(',')})`; @@ -516,7 +546,9 @@ export const getTabPaneFrequencySampleData = ( ); }; -export const getFileSysChartDataByType = (type: number): Promise> => +export const getFileSysChartDataByType = (type: number): +//@ts-ignore + Promise> => query( 'getFileSysChartData', ` @@ -530,7 +562,9 @@ export const getFileSysChartDataByType = (type: number): Promise> => 'exec' ); -export const getDiskIOProcess = (): Promise> => +export const getDiskIOProcess = (): +//@ts-ignore + Promise> => query( 'getDiskIOProcess', ` @@ -544,7 +578,9 @@ export const getDiskIOLatencyChartDataByProcess = ( all: boolean, ipid: number, typeArr: Array -): Promise> => +): +//@ts-ignore +Promise> => query( 'getDiskIOLatencyChartDataByProcess', ` @@ -833,7 +869,9 @@ export const getTabIoCompletionTimesType = (startTime: number, endTime: number): 'exec' ); -export const queryEnergyEventExits = (): Promise> => +export const queryEnergyEventExits = (): +//@ts-ignore + Promise> => query( 'queryEnergyEventExits', `select @@ -922,7 +960,9 @@ export const queryConfigEnergyAppName = (): Promise< SELECT value from trace_config where trace_source = 'hisys_event' and key = 'process_name'` ); -export const queryAllExpectedData = (): Promise> => +export const queryAllExpectedData = (): +//@ts-ignore + Promise> => query( 'queryAllExpectedData', ` @@ -941,7 +981,9 @@ export const queryAllExpectedData = (): Promise> => ORDER BY a.ipid,ts;` ); -export const queryFlowsData = (src_slice: Array): Promise> => +export const queryFlowsData = (src_slice: Array): +//@ts-ignore + Promise> => query( 'queryFlowsData', ` @@ -955,7 +997,9 @@ export const queryFlowsData = (src_slice: Array): Promise> => AND fs.id IN (${src_slice.join(',')});` ); -export const queryPrecedingData = (dst_slice: string): Promise> => +export const queryPrecedingData = (dst_slice: string): +//@ts-ignore + Promise> => query( 'queryFlowsData', ` @@ -970,7 +1014,9 @@ export const queryPrecedingData = (dst_slice: string): Promise> => { $dst_slice: dst_slice } ); -export const queryFrameTimeData = (): Promise> => +export const queryFrameTimeData = (): +//@ts-ignore + Promise> => query( 'queryFrameTimeData', ` @@ -1010,7 +1056,9 @@ export const queryHeapFile = (): Promise> => OR f.file_name = 'Timeline'` ); -export const queryHeapInfo = (fileId: number): Promise> => +export const queryHeapInfo = (fileId: number): +//@ts-ignore + Promise> => query( 'queryHeapInfo', `SELECT file_id as fileId, key, type, int_value as intValue, str_value as strValue @@ -1044,13 +1092,17 @@ export const queryHeapLocation = (fileId: number): Promise> FROM js_heap_location WHERE file_id = ${fileId}` ); -export const queryHeapString = (fileId: number): Promise> => +export const queryHeapString = (fileId: number): +//@ts-ignore + Promise> => query( 'queryHeapString', `SELECT string FROM js_heap_string WHERE file_id = ${fileId}` ); -export const queryTraceRange = (): Promise> => +export const queryTraceRange = (): +//@ts-ignore + Promise> => query('queryTraceRange', `SELECT t.start_ts as startTs, t.end_ts as endTs FROM trace_range t`); export const queryBySelectAllocationOrReturn = ( @@ -1372,7 +1424,9 @@ export const queryFpsSourceList = ( ` ); -export const queryStateFreqList = (startTime: number, endTime: number, cpu: number): Promise> => { +export const queryStateFreqList = (startTime: number, endTime: number, cpu: number): +//@ts-ignore + Promise> => { let sql = `select c.value, c.ts, c.dur,