]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/dc/Log.js
ui: fix align mode of two column container
[pve-manager.git] / www / manager6 / dc / Log.js
1 /* This class defines the "Cluster log" tab of the bottom status panel
2 * A log entry is a timestamp associated with an action on a cluster
3 */
4
5 Ext.define('PVE.dc.Log', {
6 extend: 'Ext.grid.GridPanel',
7
8 alias: ['widget.pveClusterLog'],
9
10 initComponent: function() {
11 let me = this;
12
13 let logstore = Ext.create('Proxmox.data.UpdateStore', {
14 storeid: 'pve-cluster-log',
15 model: 'proxmox-cluster-log',
16 proxy: {
17 type: 'proxmox',
18 url: '/api2/json/cluster/log',
19 },
20 });
21 let store = Ext.create('Proxmox.data.DiffStore', {
22 rstore: logstore,
23 appendAtStart: true,
24 });
25
26 Ext.apply(me, {
27 store: store,
28 stateful: false,
29
30 viewConfig: {
31 trackOver: false,
32 stripeRows: true,
33 getRowClass: function(record, index) {
34 let pri = record.get('pri');
35 if (pri && pri <= 3) {
36 return "proxmox-invalid-row";
37 }
38 return undefined;
39 },
40 },
41 sortableColumns: false,
42 columns: [
43 {
44 header: gettext("Time"),
45 dataIndex: 'time',
46 width: 150,
47 renderer: function(value) {
48 return Ext.Date.format(value, "M d H:i:s");
49 },
50 },
51 {
52 header: gettext("Node"),
53 dataIndex: 'node',
54 width: 150,
55 },
56 {
57 header: gettext("Service"),
58 dataIndex: 'tag',
59 width: 100,
60 },
61 {
62 header: "PID",
63 dataIndex: 'pid',
64 width: 100,
65 },
66 {
67 header: gettext("User name"),
68 dataIndex: 'user',
69 renderer: Ext.String.htmlEncode,
70 width: 150,
71 },
72 {
73 header: gettext("Severity"),
74 dataIndex: 'pri',
75 renderer: PVE.Utils.render_serverity,
76 width: 100,
77 },
78 {
79 header: gettext("Message"),
80 dataIndex: 'msg',
81 renderer: Ext.String.htmlEncode,
82 flex: 1,
83 },
84 ],
85 listeners: {
86 activate: () => logstore.startUpdate(),
87 deactivate: () => logstore.stopUpdate(),
88 destroy: () => logstore.stopUpdate(),
89 },
90 });
91
92 me.callParent();
93 },
94 });