mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
fix(explore/logs) not collapsing whitespace (#15737)
- Set container width to 100% so column widths can be calculated properly - Sets duplicates, level, timestamp, local time to a fixed width based upon em units since the size of these are static - Sets labels to be 20% - Remove min-width:80% on message column so that it now consumes remaining space - Additionally fixes long labels from overflowing into the messages column by properly setting a max-width per label and hiding overflow closes #15673 Signed-off-by: Steven Sheehy <ssheehy@firescope.com>
This commit is contained in:
parent
5f6838abca
commit
aa7e348694
@ -13,8 +13,19 @@ interface Props {
|
|||||||
export class LogLabels extends PureComponent<Props> {
|
export class LogLabels extends PureComponent<Props> {
|
||||||
render() {
|
render() {
|
||||||
const { getRows, labels, onClickLabel, plain } = this.props;
|
const { getRows, labels, onClickLabel, plain } = this.props;
|
||||||
return Object.keys(labels).map(key => (
|
return (
|
||||||
<LogLabel key={key} getRows={getRows} label={key} value={labels[key]} plain={plain} onClickLabel={onClickLabel} />
|
<span className="logs-labels">
|
||||||
));
|
{Object.keys(labels).map(key => (
|
||||||
|
<LogLabel
|
||||||
|
key={key}
|
||||||
|
getRows={getRows}
|
||||||
|
label={key}
|
||||||
|
value={labels[key]}
|
||||||
|
plain={plain}
|
||||||
|
onClickLabel={onClickLabel}
|
||||||
|
/>
|
||||||
|
))}
|
||||||
|
</span>
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -150,7 +150,7 @@ export class LogRow extends PureComponent<Props, State> {
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{showLocalTime && (
|
{showLocalTime && (
|
||||||
<div className="logs-row__time" title={`${row.timestamp} (${row.timeFromNow})`}>
|
<div className="logs-row__localtime" title={`${row.timestamp} (${row.timeFromNow})`}>
|
||||||
{row.timeLocal}
|
{row.timeLocal}
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
@ -63,6 +63,7 @@ $column-horizontal-spacing: 10px;
|
|||||||
font-size: $font-size-sm;
|
font-size: $font-size-sm;
|
||||||
display: table;
|
display: table;
|
||||||
table-layout: fixed;
|
table-layout: fixed;
|
||||||
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.logs-row {
|
.logs-row {
|
||||||
@ -83,16 +84,22 @@ $column-horizontal-spacing: 10px;
|
|||||||
|
|
||||||
.logs-row__time {
|
.logs-row__time {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
width: 19em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logs-row__localtime {
|
||||||
|
white-space: nowrap;
|
||||||
|
width: 12.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.logs-row__labels {
|
.logs-row__labels {
|
||||||
max-width: 20%;
|
width: 20%;
|
||||||
line-height: 1.2;
|
line-height: 1.2;
|
||||||
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.logs-row__message {
|
.logs-row__message {
|
||||||
word-break: break-all;
|
word-break: break-all;
|
||||||
min-width: 80%;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.logs-row__match-highlight {
|
.logs-row__match-highlight {
|
||||||
@ -112,6 +119,7 @@ $column-horizontal-spacing: 10px;
|
|||||||
|
|
||||||
.logs-row__level {
|
.logs-row__level {
|
||||||
position: relative;
|
position: relative;
|
||||||
|
width: 10px;
|
||||||
|
|
||||||
&::after {
|
&::after {
|
||||||
content: '';
|
content: '';
|
||||||
@ -165,6 +173,7 @@ $column-horizontal-spacing: 10px;
|
|||||||
|
|
||||||
.logs-row__duplicates {
|
.logs-row__duplicates {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
|
width: 4.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.logs-row__field-highlight {
|
.logs-row__field-highlight {
|
||||||
@ -193,15 +202,20 @@ $column-horizontal-spacing: 10px;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.logs-labels {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
|
||||||
.logs-label {
|
.logs-label {
|
||||||
display: inline-block;
|
display: flex;
|
||||||
padding: 0 2px;
|
padding: 0 2px;
|
||||||
background-color: $btn-inverse-bg;
|
background-color: $btn-inverse-bg;
|
||||||
border-radius: $border-radius;
|
border-radius: $border-radius;
|
||||||
margin: 0 4px 2px 0;
|
margin: 0 4px 2px 0;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
position: relative;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.logs-label__icon {
|
.logs-label__icon {
|
||||||
@ -211,6 +225,13 @@ $column-horizontal-spacing: 10px;
|
|||||||
margin-left: 2px;
|
margin-left: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.logs-label__value {
|
||||||
|
display: inline-block;
|
||||||
|
max-width: 20em;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
.logs-label__stats {
|
.logs-label__stats {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 1.25em;
|
top: 1.25em;
|
||||||
|
Loading…
Reference in New Issue
Block a user