Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在AWS中禁用.NET核心2.0应用程序的开发环境

在AWS中禁用.NET核心2.0应用程序的开发环境
EN

Stack Overflow用户
提问于 2018-04-09 11:51:24
回答 3查看 2.1K关注 0票数 1

我有一个.NET Core应用程序,我把它部署到AWS ElasticBeanstalk上。但是当我进入应用程序时,我会收到一个错误消息:

在部署的应用程序中不应启用开发环境。

  1. launchsettings.json文件中,我将ASPNETCORE_ENVIRONMENT的值设置为Production
  2. 当我使用Visual (AWS工具包)部署应用程序时,我将Project build configuration的值设置为Release
  3. 我还用名称ASPNETCORE_ENVIRONMENTEB Software Configuration中的值Production创建了环境变量。

但我还是会犯同样的错误,知道会有什么修正吗?

我的launchSettings.json文件如下所示:

代码语言:javascript
运行
AI代码解释
复制
{
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://DUMMY.us-west-2.elasticbeanstalk.com/",
      "sslPort": 0
    }
  },
  "profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "launchUrl": "http://DUMMY.us-west-2.elasticbeanstalk.com/",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "AlacsWeb": {
      "commandName": "Project",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
      "applicationUrl": "http://DUMMY.us-west-2.elasticbeanstalk.com/"
    }
  }
}

startup.cs文件:

代码语言:javascript
运行
AI代码解释
复制
public class Startup
{
    public Startup(IConfiguration configuration)
    {
        Configuration = configuration;
    }

    public IConfiguration Configuration { get; }

    // This method gets called by the runtime. Use this method to add services to the container.
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddDbContext<ApplicationDbContext>(options =>
            options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

        services.AddIdentity<ApplicationUser, IdentityRole>()
            .AddEntityFrameworkStores<ApplicationDbContext>()
            .AddDefaultTokenProviders();

        // Add application services.
        services.AddTransient<IEmailSender, EmailSender>();

        services.AddMvc();

        // Add http context
        services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();
    }

    // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseBrowserLink();
            app.UseDeveloperExceptionPage();
            app.UseDatabaseErrorPage();
        }
        else
        {
            app.UseExceptionHandler("/Home/Error");
        }

        app.UseStaticFiles();

        app.UseAuthentication();

        app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");
        });
    }
}
EN

回答 3

Stack Overflow用户

发布于 2018-04-12 23:13:42

谢谢你贴出你的代码。我在这里回答是因为有更多的话要说,超出了评论表格所允许的范围。

TLDR

在EBS中,您的环境变量被忽略了,因为您的创业公司没有选择它们。

我不知道launchSettings.json在EBS中有什么影响,但是考虑到文件中的环境变量被忽略了,我怀疑答案是没有的。

您可以在EBS中保存环境变量。

launchSettings.json

我自己不使用这些,所以下面是研究和琐碎的测试。

这篇MS文章声称这个文件只在Visual中运行

使用Visual时,可以在launchSettings.json文件中设置环境变量。

但是,我从一个简单的测试中了解到,这些内容也是由dotnet run在项目目录中获取的。另外,我知道VS代码会忽略它而支持.vscode/launch.json

我不知道的是IIS是否注意到了它。(我指的是EBS实例中的IIS,而不是您的开发框中的IIS Express )。

环境变量

我想我能理解为什么环境变量被忽略了。

Startup.cs有一个可供选择的构造函数,它允许您从环境变量、配置文件等构建配置对象。它接受一个IHostingEnvironment实例。

代码语言:javascript
运行
AI代码解释
复制
public class Startup
{
    public Startup(IHostingEnvironment env)
    {
        var builder = new ConfigurationBuilder()
                .AddEnvironmentVariables(); // <--- This picks up env variables
        Configuration = builder.Build();
    }


    public IConfigurationRoot Configuration { get; }

    // etc ....
}

EB环境变量

正如我在评论中所解释的那样,EB + dotnet核心2在环境变量上处于混乱状态。我们的解决方案不是解析每个我早些时候的回答的底层文件,而是对我们的dotnet应用程序进行文档化。

也就是说,您可以在EB中保存环境变量。正如您所说,软件配置是输入它们的正确位置。然后,单击您的环境(在EB中显示的绿色/灰色/任何卡片),转到Actions菜单,然后保存配置。

票数 1
EN

Stack Overflow用户

发布于 2018-04-17 01:35:27

launchsettings.json是特定于visual构建的。它不会影响部署。

下面的问题提供了一些关于这个问题的见解

ASP.NET Core1.0中的AWS弹性豆柄环境变量

票数 1
EN

Stack Overflow用户

发布于 2021-01-15 08:39:37

一个疯狂的解决方案:

取代:

代码语言:javascript
运行
AI代码解释
复制
  if (env.IsDevelopment())
    {
        app.UseBrowserLink();
        app.UseDeveloperExceptionPage();
        app.UseDatabaseErrorPage();
    }
    else
    {
        app.UseExceptionHandler("/Home/Error");
    }

代码语言:javascript
运行
AI代码解释
复制
  app.UseBrowserLink();
        app.UseDeveloperExceptionPage();
        app.UseDatabaseErrorPage();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49740635

复制
相关文章
利用logstash的logstash-input-jdbc插件实现mysql增量导入ES的介绍
3, 官网介绍例子,使用 logstash-input-jdbc 到 elasticsearch
全栈程序员站长
2022/09/10
7620
利用logstash的logstash-input-jdbc插件实现mysql增量导入ES的介绍
logstash安装与logstash-input-jdbc插件使用
于是elasticsearch提供了可以直接和数据库关联,并且自动根据数据库中的数据更新索引logstash。
大道七哥
2019/09/10
1.9K0
logstash安装与logstash-input-jdbc插件使用
如何进行Logstash logstash-input-jdbc插件的离线安装
我们单位的服务器位于隔离区,不允许链接互联网,因此整理了在ELK集群上离线安装Logstash的jdbc input插件的方法,供大家参考。
大江小浪
2018/07/24
1.5K0
logstash-input-jdbc
https://segmentfault.com/a/1190000011784259
丁D
2022/08/12
5840
利用Logstash插件进行Elasticsearch与Mysql的数据
Logstash与Elasticsearch的安装就不多说了,我之前有两篇文章写的比较详细了ElasticSearch + Logstash + Kibana 搭建笔记 和 Filebeat+Logstash+ElasticSearch+Kibana搭建Apache访问日志解析平台。
大江小浪
2018/07/24
1.2K0
logstash插件推荐
1、kafka 参考:https://www.elastic.co/guide/en/logstash/current/plugins-inputs-kafka.html 2、hdfs 参考:https://www.elastic.co/guide/en/logstash/5.4/plugins-outputs-webhdfs.html 3、zabbix 参考:https://www.elastic.co/guide/en/logstash/5.4/plugins-outputs-zabbix.
苦咖啡
2018/04/28
8810
logstash安装插件
查看可以用插件 bin/logstash-plugin list 安装新插件 方案1、从https://github.com/logstash-plugins/安装新插件 bin/logstash-plugin install logstash-output-exec 方案2、本地安装 bin/logstash-plugin install /data/my-plugin.gem
苦咖啡
2018/04/28
3K0
logstash插件参数类型
Codec,logstash codec的名字,被转换内容以相应codec插件来展示,如下所示:
johnhuster的分享
2022/03/28
3080
logstash input插件开发
logstash作为一个数据管道中间件,支持对各种类型数据的采集与转换,并将数据发送到各种类型的存储库,比如实现消费kafka数据并且写入到Elasticsearch, 日志文件同步到对象存储S3等,mysql数据同步到Elasticsearch等。
bellen
2018/07/30
4.1K0
logstash input插件开发
WAF防火墙数据接入腾讯云ES最佳实践(上)
本文描述问题及解决方法适用于 腾讯云 Elasticsearch Service(ES)。
岳涛
2023/08/09
1.5K2
WAF防火墙数据接入腾讯云ES最佳实践(上)
Elasticsearch系列组件:Logstash强大的日志管理和数据分析工具
Logstash 是一个开源的数据收集引擎,它具有实时管道功能,可以用来统一处理来自不同源的数据,并将其发送到你选择的目标。Logstash 支持多种类型的输入数据,包括日志文件、系统消息队列、数据库等,可以对数据进行各种转换和处理,然后将数据发送到各种目标,如 Elasticsearch、Kafka、邮件通知等。
栗筝i
2023/10/23
2.7K0
Elasticsearch系列组件:Logstash强大的日志管理和数据分析工具
Logstash-input-jdbc 同步 mysql 准实时数据至 ElasticSearch 搜索引擎
logstash-input-jdbc 插件将 Zabbix 数据库中 alerts 表告警数据推送至 ElasticSearch 搜索引擎。
Kevin song
2020/08/28
2.7K0
Logstash-input-jdbc 同步 mysql 准实时数据至 ElasticSearch 搜索引擎
mysql同步elasticsearch调研
目前项目采用的是更新数据后再更新elasticsearch,各种历史原因导致很多数据并不是同步的,业务互相紧耦合, 所以需要调研适合团队发展的 db同步es机制,从业务层面剔除这部分功能维护。 下面是本人在搭建、配置、调试过程中一些总结和踩完坑后整理的配置。
用户2825413
2019/07/15
9740
mysql同步elasticsearch调研
【愚公系列】2022年12月 Elasticsearch数据库-.NET CORE的Serilog=>Rabbitmq=>Logstash=>Elasticsearch的日志传输(四)
Logstash是一种分布式日志收集框架,经常与ElasticSearch,Kibana配置,组成著名的ELK技术栈,非常适合用来做日志数据的分析。logstash具备实时数据传输能力的管道,负责将数据信息从管道的输入端传输到管道的输出端;与此同时这根管道还可以让你根据自己的需求在中间加上滤网,Logstash提供里很多功能强大的滤网以满足你的各种应用场景。当然它可以单独出现,作为日志收集软件,你可以收集日志到多种存储系统或临时中转系统,如MySQL,Redis,Kakfa,HDFS, Lucene,Solr等,并不一定是ElasticSearch。
愚公搬代码
2022/12/18
7300
【愚公系列】2022年12月 Elasticsearch数据库-.NET CORE的Serilog=>Rabbitmq=>Logstash=>Elasticsearch的日志传输(四)
Logstash使用jdbc_input同步Mysql数据时遇到的空时间SQLException问题
今天在使用Logstash的jdbc_input插件同步Mysql数据时,本来应该能搜索出10条数据,结果在Elasticsearch中只看到了4条,终端中只给出了如下信息
大江小浪
2018/07/24
1.3K0
ElasticSearch 使用 Logstash 从 MySQL 中同步数据
目的是希望将现有的数据导入到 ElasticSearch 中,研究了好几种,除了写代码的方式,最简便的就是使用 Logstash 来导入数据到 ElasticSearch 中了。
皇上得了花柳病
2020/05/06
3.6K0
logstash_output_kafka:Mysql同步Kafka深入详解
实际业务场景中,会遇到基础数据存在Mysql中,实时写入数据量比较大的情景。迁移至kafka是一种比较好的业务选型方案。
铭毅天下
2019/05/08
3K0
logstash_output_kafka:Mysql同步Kafka深入详解
ElasticSearch + Logstash进行数据库同步
在我们使用mysql和elasticsearch结合使用的时候,可能会有一些同步的需求,想要数据库和elasticsearch同步的方式其实有很多。
Bug开发工程师
2019/05/05
2.1K0
ElasticSearch + Logstash进行数据库同步
logback 配置日志输出到 logstash
发表于2018-06-062019-01-01 作者 wind <?xml version="1.0" encoding="UTF-8" ?> <configuration> <inclu
前Thoughtworks-杨焱
2022/02/19
1.3K0
实战 | 使用Spring Boot + Elasticsearch + Logstash 实现图书查询检索服务
前面我们介绍了Spring Boot 整合 Elasticsearch 实现数据查询检索的功能,在实际项目中,我们的数据一般存储在数据库中,而且随着业务的发送,数据也会随时变化。
架构师精进
2023/03/23
1.3K0
实战 | 使用Spring Boot + Elasticsearch + Logstash 实现图书查询检索服务

相似问题

使用UPSERT函数的jdbc输出插件logstash

10

用于MYSQL的Logstash输入插件

15

Logstash jdbc插件问题

10

Logstash jdbc插件的理解

12

JDBC输入logstash插件多次从mysql获取数据

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档