Просмотр исходного кода

add provider and region to provisioning started slack notifs (#3486)

Feroze Mohideen 2 лет назад
Родитель
Сommit
af72d7468b

+ 1 - 0
api/server/handlers/project/update_onboarding_step.go

@@ -199,6 +199,7 @@ func (v *UpdateOnboardingStepHandler) ServeHTTP(w http.ResponseWriter, r *http.R
 			LastName:               user.LastName,
 			CompanyName:            user.CompanyName,
 			Region:                 request.Region,
+			Provider:               request.Provider,
 		}))
 		if err != nil {
 			_ = telemetry.Error(ctx, span, err, "error tracking provisioning started")

+ 3 - 3
dashboard/src/components/AzureProvisionerSettings.tsx

@@ -71,9 +71,9 @@ const AzureProvisionerSettings: React.FC<Props> = (props) => {
   const [errorDetails, setErrorDetails] = useState<string>("");
   const [isClicked, setIsClicked] = useState(false);
 
-  const markStepStarted = async (step: string) => {
+  const markStepStarted = async (step: string, region: string) => {
     try {
-      await api.updateOnboardingStep("<token>", { step }, {
+      await api.updateOnboardingStep("<token>", { step, region, provider: "azure" }, {
         project_id: currentProject.id,
       });
     } catch (err) {
@@ -193,7 +193,7 @@ const AzureProvisionerSettings: React.FC<Props> = (props) => {
       setErrorDetails("")
 
       if (!props.clusterId) {
-        markStepStarted("provisioning-started");
+        markStepStarted("provisioning-started", azureLocation);
       }
 
       const res = await api.createContract("<token>", data, {

+ 3 - 4
dashboard/src/components/GCPProvisionerSettings.tsx

@@ -82,15 +82,14 @@ const GCPProvisionerSettings: React.FC<Props> = (props) => {
   const [errorMessage, setErrorMessage] = useState<string>("");
   const [errorDetails, setErrorDetails] = useState<string>("");
   const [isClicked, setIsClicked] = useState(false);
-  const [detected, setDetected] = useState<Detected | undefined>(undefined);
   const [preflightData, setPreflightData] = useState({})
   const [preflightFailed, setPreflightFailed] = useState<boolean>(false)
   const [isLoading, setIsLoading] = useState(false);
   const [isExpanded, setIsExpanded] = useState(false);
 
-  const markStepStarted = async (step: string) => {
+  const markStepStarted = async (step: string, region?: string) => {
     try {
-      await api.updateOnboardingStep("<token>", { step }, {
+      await api.updateOnboardingStep("<token>", { step, provider: "gcp", region }, {
         project_id: currentProject.id,
       });
     } catch (err) {
@@ -261,7 +260,7 @@ const GCPProvisionerSettings: React.FC<Props> = (props) => {
         setErrorDetails("")
 
         if (!props.clusterId) {
-          markStepStarted("provisioning-started");
+          markStepStarted("provisioning-started", region);
         }
 
         const res = await api.createContract("<token>", data, {

+ 1 - 0
dashboard/src/components/ProvisionerSettings.tsx

@@ -141,6 +141,7 @@ const ProvisionerSettings: React.FC<Props> = (props) => {
           step,
           error_message: errMessage,
           region: awsRegion,
+          provider: "aws",
         },
         {
           project_id: currentProject.id,

+ 2 - 0
internal/analytics/tracks.go

@@ -386,6 +386,7 @@ type ProvisioningAttemptTrackOpts struct {
 	CompanyName  string
 	ErrorMessage string
 	Region       string
+	Provider     string
 }
 
 // ProvisioningAttemptTrack returns a track for when a user attempts provisioning
@@ -395,6 +396,7 @@ func ProvisioningAttemptTrack(opts *ProvisioningAttemptTrackOpts) segmentTrack {
 	additionalProps["name"] = opts.FirstName + " " + opts.LastName
 	additionalProps["company"] = opts.CompanyName
 	additionalProps["region"] = opts.Region
+	additionalProps["provider"] = opts.Provider
 
 	return getSegmentProjectTrack(
 		opts.ProjectScopedTrackOpts,