mirror of
https://github.com/grafana/grafana.git
synced 2024-11-24 18:00:31 -06:00
logs: send more info to getLogRowContext (#52130)
This commit is contained in:
parent
57273d4846
commit
1d3cd0103e
@ -149,13 +149,14 @@ export enum LogsDedupDescription {
|
||||
* Data sources that allow showing context rows around the provided LowRowModel should implement this method.
|
||||
* This will enable "context" button in Logs Panel.
|
||||
*/
|
||||
export interface DataSourceWithLogsContextSupport {
|
||||
export interface DataSourceWithLogsContextSupport<TQuery extends DataQuery = DataQuery> {
|
||||
/**
|
||||
* Retrieve context for a given log row
|
||||
*/
|
||||
getLogRowContext: <TContextQueryOptions extends {}>(
|
||||
row: LogRowModel,
|
||||
options?: TContextQueryOptions
|
||||
options?: TContextQueryOptions,
|
||||
query?: TQuery
|
||||
) => Promise<DataQueryResponse>;
|
||||
|
||||
/**
|
||||
|
@ -44,10 +44,15 @@ class LogsContainer extends PureComponent<LogsContainerProps> {
|
||||
};
|
||||
|
||||
getLogRowContext = async (row: LogRowModel, options?: any): Promise<any> => {
|
||||
const { datasourceInstance } = this.props;
|
||||
const { datasourceInstance, logsQueries } = this.props;
|
||||
|
||||
if (hasLogsContextSupport(datasourceInstance)) {
|
||||
return datasourceInstance.getLogRowContext(row, options);
|
||||
// we need to find the query, and we need to be very sure that
|
||||
// it's a query from this datasource
|
||||
const query = (logsQueries ?? []).find(
|
||||
(q) => q.refId === row.dataFrame.refId && q.datasource != null && q.datasource.type === datasourceInstance.type
|
||||
);
|
||||
return datasourceInstance.getLogRowContext(row, options, query);
|
||||
}
|
||||
|
||||
return [];
|
||||
|
Loading…
Reference in New Issue
Block a user