logging/api/WithGitId/Controllers/LoggingSampleController.cs (42 lines of code) (raw):
/*
* Copyright (c) 2017 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
//using System.Web.Mvc;
using Microsoft.AspNetCore.Mvc;
namespace GoogleCloudSamples.Controllers
{
public class LoggingSampleController : Controller
{
// GET: LoggingSample
public ActionResult Index()
{
return View();
}
// GET: /LoggingSample/Log/1
[HttpGet]
public ActionResult Log(int? count)
{
try
{
if (StackdriverLogWriter.ProjectId == "YOUR-PROJECT-ID")
{
throw new Exception("Please update the YOUR-PROJECT-ID with your real project id and try again");
}
if (count > 0 && count <= 100)
{
for (int i = 0; i < count; ++i)
{
StackdriverLogWriter.WriteLog("Hello, Stackdriver!");
}
return Content($"Inserted {count} logs");
}
else
{
throw new ArgumentOutOfRangeException("Pleae limit count in range of 1 ~ 100");
}
}
catch (Exception ex)
{
return Content(ex.ToString());
}
}
}
}