Skip to content

Commit ff39028

Browse files
authored
[v3.x] Backport - Removing binding direction from event name when emitting binding metric to logs
* Removing binding direction when emitting binding metric to logs. * Fixed test to address PR feedback. * Removing unused constant
1 parent ba9095b commit ff39028

File tree

3 files changed

+7
-8
lines changed

3 files changed

+7
-8
lines changed

src/WebJobs.Script.WebHost/Diagnostics/FunctionInstanceLogger.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -133,9 +133,7 @@ internal object LogInvocationMetrics(FunctionMetadata metadata)
133133
{
134134
string eventName = _bindingMetricEventNames.GetOrAdd(binding, (existing) =>
135135
{
136-
return binding.IsTrigger ?
137-
string.Format(MetricEventNames.FunctionBindingTypeFormat, binding.Type) :
138-
string.Format(MetricEventNames.FunctionBindingTypeDirectionFormat, binding.Type, binding.Direction);
136+
return string.Format(MetricEventNames.FunctionBindingTypeFormat, binding.Type);
139137
});
140138
_metrics.LogEvent(eventName, metadata.Name);
141139
}

src/WebJobs.Script/Diagnostics/MetricEventNames.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ public static class MetricEventNames
4848
// function level events
4949
public const string FunctionInvokeLatency = "function.invoke.latency";
5050
public const string FunctionBindingTypeFormat = "function.binding.{0}";
51-
public const string FunctionBindingTypeDirectionFormat = "function.binding.{0}.{1}";
5251
public const string FunctionCompileLatencyByLanguageFormat = "function.compile.{0}.latency";
5352
public const string FunctionInvokeThrottled = "function.invoke.throttled";
5453
public const string FunctionUserLog = "function.userlog";

test/WebJobs.Script.Tests/Diagnostics/FunctionInstanceLoggerTests.cs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,12 @@ public void LogInvocationMetrics_EmitsExpectedEvents()
4040

4141
Assert.Equal(5, _metrics.LoggedEvents.Count());
4242
Assert.Contains("function.binding.httptrigger_testfunction", _metrics.LoggedEvents);
43-
Assert.Contains("function.binding.blob.in_testfunction", _metrics.LoggedEvents);
44-
Assert.Contains("function.binding.blob.out_testfunction", _metrics.LoggedEvents);
45-
Assert.Contains("function.binding.table.in_testfunction", _metrics.LoggedEvents);
46-
Assert.Contains("function.binding.table.in_testfunction", _metrics.LoggedEvents);
43+
Assert.Equal(1, _metrics.LoggedEvents.Count(x => x == "function.binding.httptrigger_testfunction"));
44+
45+
// for non-trigger bindings, event name does not include direction.
46+
// So log entries for input and output binding will have same event name.
47+
Assert.Equal(2, _metrics.LoggedEvents.Count(x => x == "function.binding.blob_testfunction"));
48+
Assert.Equal(2, _metrics.LoggedEvents.Count(x => x == "function.binding.table_testfunction"));
4749

4850
// log the events once more
4951
invokeLatencyEvent = _functionInstanceLogger.LogInvocationMetrics(metadata);

0 commit comments

Comments
 (0)